C# EF核心NullReferenceException访问相关实体
如何使用Lambda EF core更新子表值C# EF核心NullReferenceException访问相关实体,c#,.net,entity-framework,lambda,asp.net-core,C#,.net,Entity Framework,Lambda,Asp.net Core,如何使用Lambda EF core更新子表值 var UpdatePercentage = _context.TaskOverview.Single(c => c.Id == 100); UpdatePercentage.Completedpercentage = 30; UpdatePercentage.TaskSubInfo.Content1 = "Some value"; await _context.SaveChangesAsync(); 我得到NullReferenceEx
var UpdatePercentage = _context.TaskOverview.Single(c => c.Id == 100);
UpdatePercentage.Completedpercentage = 30;
UpdatePercentage.TaskSubInfo.Content1 = "Some value";
await _context.SaveChangesAsync();
我得到NullReferenceException错误
NullReferenceException: Object reference not set to an instance of an object.
你可以用
我猜您在相关的
实体
TaskSubInfo上得到了NullReferenceException
EntityFramework
默认情况下不加载相关的实体,但
var UpdatePercentage = _context.TaskOverview
.Include(to => to.TaskSubInfo)
.Single(c => c.Id == 100);
UpdatePercentage?.Completedpercentage = 30;
UpdatePercentage?.TaskSubInfo.Content1 = "Some value";
await _context.SaveChangesAsync();
您在三行中的哪一行得到异常:您的_上下文是否为空?或者UpdatePercentage.CompletedPercentage为空?或者UpdatePercentage.TaskSubInfo为空?可能是的重复项
var UpdatePercentage = _context.TaskOverview
.Include(to => to.TaskSubInfo)
.Single(c => c.Id == 100);
UpdatePercentage?.Completedpercentage = 30;
UpdatePercentage?.TaskSubInfo.Content1 = "Some value";
await _context.SaveChangesAsync();