.net core 为什么在实体框架核心中使用FindAsync时会出现空引用异常?
使用.NET Core 3.1,我有一个简单的控制器方法,定义如下: [HttpGet{id}] 公共异步任务获取[FromRoute]int id { var animal=await_dbContext.animal.FindAsync id; 如果animal==null,则返回NotFound; 还可以动物; } 当使用有效id调用时,会从FindAsync内引发空引用异常 如果我转换为同步方法,并改用Find,它将按预期工作 我尝试过将Task更改为ValueTask,或将.AsTask添加到.FindAsync,但没有任何区别。.net core 为什么在实体框架核心中使用FindAsync时会出现空引用异常?,.net-core,entity-framework-core,.net Core,Entity Framework Core,使用.NET Core 3.1,我有一个简单的控制器方法,定义如下: [HttpGet{id}] 公共异步任务获取[FromRoute]int id { var animal=await_dbContext.animal.FindAsync id; 如果animal==null,则返回NotFound; 还可以动物; } 当使用有效id调用时,会从FindAsync内引发空引用异常 如果我转换为同步方法,并改用Find,它将按预期工作 我尝试过将Task更改为ValueTask,或将.AsTas
如何让异步调用正常工作?也许您可以试试这种语法
var animal=await_dbContext.animal.FirstOrDefaultAsyncx=>x.Id==Id 也许你可以试试这种语法 var animal=await_dbContext.animal.FirstOrDefaultAsyncx=>x.Id==Id