【问题标题】:EF core NullReferenceException accessing related entityEF 核心 NullReferenceException 访问相关实体
【发布时间】:2016-12-05 11:05:19
【问题描述】:

如何使用 Lambda EF 核心更新子表值。

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.

【问题讨论】:

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


【解决方案1】:

我猜你在相关的EntityTaskSubInfo 上获得了NullReferenceException

EntityFramework 默认不加载相关的Entityyou have to do it

var UpdatePercentage = _context.TaskOverview
                            .Include(to => to.TaskSubInfo)
                            .Single(c => c.Id == 100);

UpdatePercentage?.Completedpercentage = 30;
UpdatePercentage?.TaskSubInfo.Content1 = "Some value";

await _context.SaveChangesAsync(); 

【讨论】:

    【解决方案2】:

    您可以使用Include

    var UpdatePercentage = _context.TaskOverview.Include("TaskSubInfo").Single(c => c.Id == 100);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-15
      • 1970-01-01
      • 1970-01-01
      • 2019-10-13
      • 2021-12-04
      • 2013-07-11
      • 1970-01-01
      相关资源
      最近更新 更多