实体数据模型中属性实体引用与属性之间的区别是什么?

时间:2011-08-02 10:13:05

标签: c# entity-framework entity-relationship ado.net-entity-data-model

我有三个表结构,如下面的

AppUser             User                App              
*********           ******              ******
AppUserId           UserId              AppId
UserId
AppId 

Table AppUser的UserId和AppId是表User和App的外键。当我向实体数据模型生成 3个表时,它有三个类AppUser,User和App 。但是,我不理解 AppUser.UserReference和AppUser.User

1 个答案:

答案 0 :(得分:3)

AppUser.User是User,AppUser.UserReference类型的导航属性 EntityReference<User>。它们是完全不同的对象。

您可以使用AppUser.User访问相关的用户属性或更改相关用户。 例如,您可以使用AppUser.UserReference以EntityReference<T>.Load()方法加载相关用户。

实际上AppUser.UserReference.Value等于AppUser.User。