使用EF Core和Azure Functions更新数据库时无法访问已处置的对象

我正尝试通过以下方法使用EF Core从数据库中获取条件所在的单行,

192-bit

也尝试过

 IncidentRequestDetailsModel dbObject = _context.IncidentRequestDetails.SingleOrDefault(no => no.Ticket_No == requestList[i].Ticket_No);

这个

IncidentRequestDetailsModel dbObject = _context.IncidentRequestDetails.Where(no => no.Ticket_No == requestList[i].Ticket_No).FirstOrDefault();

它抛出此错误

如果要在上下文上调用Dispose()或包装上下文 在using语句中。如果您使用依赖项注入,则您 应该让依赖注入容器负责处理 上下文实例。对象名称:“ uploadContext”。

我的最终目标是使用以下总体代码更新数据库,

IncidentRequestDetailsModel dbObject = await _context.IncidentRequestDetails.FindAsync(requestList[i].Id);

我正在将EF Core与Azure Functions和.Net Core 2.1一起使用。

shushengnan 回答:使用EF Core和Azure Functions更新数据库时无法访问已处置的对象

这与查询的语法无关。这意味着您的代码的某些部分在您要查询的代码部分之前在Dispose()上调用了_context方法。

您需要跟踪调用Dispose()或退出using语句的位置。并确保您不会在多次调用Azure函数时重用同一上下文实例。

本文链接:https://www.f2er.com/2778839.html

大家都在问