.net - Entity Framework 中联接表的导航属性

标签 .net database entity-framework-4

所以我的 SQL 数据库中有一个表:

CompanyRelationships
--------------------
ID
CompanyID
RelatedCompanyID
PermissionGroupID

它定义了一家公司何时允许另一家公司访问其记录。 “CompanyID”是授予访问权限的公司,“RelatedCompanyID”是获得访问权限的公司。

是的,相同的两家公司可能存在两条记录(每条记录都授予另一条访问权限)

问题是当我从数据库生成实体模型时(在 Visual Studio 2010 中),我获得的导航属性对于哪个是哪个不是很有帮助。我得到:

Company
Company1
UserGroup

用户组当然很明显,但我想知道哪个公司引用是哪个,因为这很重要。我确定我可以测试它并找出答案,但是每次我从数据库重新生成时我都必须重新测试以确保。有没有办法强制导航属性的命名为 FK 字段的命名,而不是它链接到的实体的命名?

最佳答案

您始终可以在模型浏览器中单击实体上的导航属性,然后查看属性窗口。该窗口显示关联名称(在数据库中添加表关系时创建)。确定关系后,您始终可以将导航属性名称重命名为您选择的名称。

例如,单击实体图中的“Company1”导航属性将显示关系名称为“Company_Id_to_Related_Company_Id”(或任何名称)。了解其含义后,您可以将导航属性重命名为有意义的名称,例如“MasterCompany”。

关于.net - Entity Framework 中联接表的导航属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6203308/

相关文章:

C# 创建管理员快捷方式

.net - 如何在ASP.NET环境中强制HttpWebRequest使用缓存?

asp.net - 如何在 IIS 中解除套接字服务器的绑定(bind)

c# - 我可以遍历 Collection.Request.Form 吗?

mysql - 是否可以通过 ID 来寻址整个表?

database - 打开一次数据库连接还是在每次数据库操作时打开?

php - 在codeigniter3.0.0中选择从模型到 Controller 的单列

c# - 包含/加入问题的 Entity Framework

c# - 违反唯一索引,试图在新上下文中插入对象图

c# - 使用 LINQ 将列表复制到不同的列表