Entity framework 将实体框架中的一对多引用映射为ID集合,而不是实际的实体引用

Entity framework 将实体框架中的一对多引用映射为ID集合,而不是实际的实体引用,entity-framework,fluent-nhibernate,one-to-many,Entity Framework,Fluent Nhibernate,One To Many,在Fluent Nhibernate中,我可以将多个实体引用1-M映射为int-id列表: public class User{ List<int> LicensesIds{ get; set; } 公共类用户{ 列出许可证持有人名单{ 得到; 设置 } 而不是 Public class User{ ICollectoin<License> Licenses{ get; set; } } 公共类用户{ I

在Fluent Nhibernate中,我可以将多个实体引用1-M映射为int-id列表:

    public class User{
     List<int> LicensesIds{
      get;
      set;
    }
公共类用户{
列出许可证持有人名单{
得到;
设置
}
而不是

Public class User{
 ICollectoin<License> Licenses{
  get;
  set;
 }
}
公共类用户{
ICollectoin许可证{
得到;
设置
}
}
这就是实体框架映射它的方式。 在fluent映射中,当我查询数据库时,我使用ID列表而不是实体列表获取它

我是否可以在实体框架中以同样的方式映射它

<>我之所以需要它是因为我正在使用存储库模式,并且为域中的每个实体创建了一个存储库:存储库,当我在LINQ中查询DB或通过在属性调用中间的惰性绑定时,我不想定义什么样的关系来查询和获取实体,而不知道这个属性调用。现在将从数据库中获取数据。 我想通过查询相关存储库来手动获取实体

Thx


James

这是不可能的。如果希望EF为您处理加载,您必须始终在您的实体中拥有许可证列表(您可以公开第二个属性,只需投影到整数列表)。如果您只需要int列表,请在存储库中实现自定义逻辑,该逻辑将执行附加查询并填充它。

这是不可能的。如果您希望EF为您处理加载,则您必须始终在实体中拥有许可证列表(您可以公开第二个属性,只需投影到整数列表)。如果您只需要int列表,请在存储库中实现自定义逻辑,该逻辑将执行附加查询并填充它