EF4中一张表分为多个实体
如果我们有一张表,包含了一些常用的字段和一些非常大,但并不常用的字段,出于性能方面考虑,在查询时尽量避免读取这些字段。
这种情况下,我们可以把一张表拆分为两个或者更多的实体。
下面的例子中使用了Person表,包含了个人信息和家庭信息,我想把个人和家庭信息拆分开来,步骤如下:
1.把Person表添加到EDM中。
2.添加一个实体类型。实体名称为PersonFamilyInfo。Key Property名称改为PersonId。
3.将Person实体中的家庭信息剪切到PersonFamilyInfo实体。
4.单击PersonFamilyInfo,查看Mapping Details窗口,单击Add a Table or View,选择实体Person
5.右击Person实体,添加 一个到PersonFamilyInfo的一对一的Association
6.查看association的属性,在两个实体间添加一个引用约束,确保PersonFamilyInfo不会独立于Person而单独存在。
这样我们就把一张表拆分为两个实体: