在EntityFramework Core中:多个请求导致异常

时间:2019-02-11 03:58:14

标签: c# asp.net-core entity-framework-core

我正在使用EntityFramework核心将新记录添加到表中 如下: enter image description here

public void AddAudit(Audit audit)
    {
        foodStoreDBContext.Audits.Add(audit);
        foodStoreDBContext.SaveChanges();
    }

。当执行此语句没有引起任何问题,但是当我尝试使用并发请求进行测试(大约10个并发请求)重复执行100次时,将显示异常: “此sqltransaction已完成;它不再可用。”

我在Scope中注册了DatabaseContext类:

services.AddScoped<IAuditRepository, AuditRepository>();

即使我更改为AddTransiant,仍然遇到问题。

其中一项建议是启用“失败重试”:

the configuration I am using are :

options.UseSqlServer(
           Configuration["Data:FoodSave:ConnectionString"],sqlServerOptionsAction: sqlOptions =>
           {
               sqlOptions.EnableRetryOnFailure(
               maxRetryCount: 10,
               maxRetryDelay: TimeSpan.FromSeconds(30),
               errorNumbersToAdd: null);
           })

,但上面仍然有相同的错误。 请帮助

0 个答案:

没有答案