gpt4 book ai didi

c# - 当包含具有空子项的孙子时,可为空的对象必须具有值

转载 作者:太空宇宙 更新时间:2023-11-03 12:07:39 25 4
gpt4 key购买 nike

我们目前遇到了 Entity Framework 的问题,我们正在从数据库中抓取一些具有可以为 null 的子元素的东西,并尝试包含孙元素。

例子

var workItems = _context.WorkItems
.Include(x => x.Contract)
.Include(x => x.Contract.ContractAccount)

如果 contract 为 null(这是允许的),那么当它尝试包含 ContractAccount 时由于 Contract 为 null 而失败。

到目前为止,我们已经尝试对孙子中的 child 进行空检查。

Contract ?? null : ContractAccount

我们也尝试过使用

DefaultIfEmpty(new Contract()) 

这似乎也是不允许的。

我们需要返回完整的 WorkItem 及其契约(Contract)/契约(Contract)帐户(如果它有一个返回给用户)但如果没有契约(Contract)那么它应该只返回 WorkItem。

感谢任何帮助。

最佳答案

使用ThenInclude:

var workItems = _context.WorkItems
.Include(x => x.Contract)
.ThenInclude(contract => contract.ContractAccount);

关于c# - 当包含具有空子项的孙子时,可为空的对象必须具有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54075598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com