提问者:小点点

在。NET Core 2.2中从UI执行存储过程时出现TimeoutException


我有一个在等待的操作之后执行存储过程的要求。 我当前正在使用EF_dbcontext.database.executesQLcommand执行存储过程。

我在Web API解决方案中编写了该功能。 当我从POSTMAN调用Web API时,它成功地执行了过程,没有任何问题。

但当我尝试从UI界面执行该过程时,它引发了一个“超时异常”。

public async void ProcessEmployeeDetailsAsync(XmlDocument xmlContent)
{
    // Some Business logic

    if (_dbContext.Entry(EmployeeBatch).State == EntityState.Modified)
    {
        var recordCount = await _dbContext.SaveChangesAsync();

        if (recordCount > 0)
        {
             SqlParameter EmpBatchId = new SqlParameter("@IPV_EmployeeBatchId", batchId);
             _dbContext.Database.ExecuteSqlCommand(
                                    "exec uspEmployeeBatchValidation_BatchId @IPV_BatchId",
                                    EmpBatchId);  // TimeOutException occuring
         }
    }
}

启动cs

services.AddDbContextPool<EmployeeContext>((serviceProvider, optionBuilder) =>
            {
                optionBuilder
                    .UseLazyLoadingProxies()
                    .UseSqlServer(_Configuration.GetConnectionString("EmployeeContext"));
            });

我失踪的地方有谁能帮帮我吗? 因为我是异步编程的新手。


共1个答案

匿名用户

可能UI应用程序无法连接到数据库。 您在同一台机器上运行Web API和UI吗? 您正在使用Windows身份验证吗? 如果是,您正在运行WEB API和; 同一用户下的UI?