我有带主键的旧表。这些表还具有用于将一个表与另一个表相关联的代理键。我想映射Membership.User表(使用Guid PK)但具有属性UserName,该属性包含代理键,该代理键将其与DepoMembers表相关联。 DepoMembers有一个数字PK - 但有一个代理键UserName。用户名保证是唯一的。
在Linq2SQL中 - 要在设计器中关联这些表 - 我们添加一个关联,其中User.UserName链接到DepoMembers.UserName - 并将Association的多重性设置为1:1。然后将导航名称修改为单数。
如果我们将DepoMembers作为关系的主要结束 - 它应该遵循如果Membership.User不存在(如果用户不管理应用程序站点但存在于DepoMembers中的情况)导航属性用户将是Null。
如何在Code First中完成...
我到目前为止唯一的选择是创建一个属性DepoMembers.User,它使用UserName属性来使用datacontext检索用户。
韧