使用实体框架访问复杂类型中的父实体

时间:2014-04-28 06:32:50

标签: entity-framework

我有一个包含相当多列的表。从数据库的角度来看,这对我来说不是问题(无论如何我同时需要所有这些信息),但我的实体有点太大了,所以我想在复杂类型中分组一些功能。问题是我还需要添加一些逻辑,因此我需要访问父实体来访问其他属性。

是否有可能传递父实体,即通过构造函数? 我正在使用Database First。 处理这个问题的最佳方法是什么?

示例:

Animal (Entity)
- Id
- AmountOfLegs
- Weight
- Height
- Looks (ComplexType)
    - BaseColor
    - HasTexture
    - GetTextureUrl () => { return BaseUrl + Parent.Id + ".jpg"; } // Error: Parent not accessible

1 个答案:

答案 0 :(得分:1)

使用Entity Framework Table Splitting功能正确设计:

http://msdn.microsoft.com/en-us/data/jj715645.aspx

您最终会为表格的不同部分设置不同的实体。那些将具有指向彼此的导航属性。