实体框架填写虚拟属性

本文关键字:虚拟 属性 框架 实体 | 更新日期: 2023-09-27 18:37:19

我使用的是 EF 6,代码优先、存储库模式 + UOW 模式。

我有 ca 方法,它将返回特定实体的所有项目。

例如:UnitOfWork.Customers.GetAllCustomers()将返回 IQueryable

在客户模型中,我有一个名为 Adress 的虚拟属性,将在运行时填充

public virtual Address Address { get; set; }

每当我在控制器中调用 GetAllCustomers 时,除了 Address 属性为 null 之外,所有信息都在那里。

任何想法如何返回地址?

实体框架填写虚拟属性

请参阅实体框架加载相关实体。

使用 .Include(c => c.Address) 紧急加载或启用延迟加载,以便 EF 将为你完成工作。

延迟加载,仅当首次访问实体时才加载实体。您应该手动加载它:

.Include(c => c.Address)

.Include("Address")