gpt4 book ai didi

c# - Entity Framework (数据库优先)对同一表命名约定控制的多重关系

转载 作者:IT王子 更新时间:2023-10-29 04:39:55 26 4
gpt4 key购买 nike

假设我们有这种情况:

数据库中的表:

Country (id, country_name),Person (id, login),CountryManager (id_country, id_person),CountryStakeholder (id_country, id_person)

如果我们必须使用 Entity Framework Database-First 从数据库创建模型,在 VS 中我们将有一个这样的类:

class Country {

int id;
string country_name;

virtual ICollection<Person> Person1; // Navigation Properties
virtual ICollection<Person> Person2; // ---------||----------

}

我已经大大简化了代码,但希望您明白了。

似乎当 Entity Framework 处理外键时,它会创建通用导航属性。是否有可能控制如何按名称创建导航属性?不幸的是,Person1, Person2 不是很好解释。

最佳答案

在 VS 中,您可以使用 GUI 执行此操作。

如果您显示模型浏览器,则向下导航至:

YourEntityModel > 实体类型 > 国家

然后右键单击“Person1”导航属性并选择“属性”,然后您可以将导航属性名称更改为您喜欢的任何名称:

enter image description here

只需更改名称、保存更改并完成...

(实际上有很多方法可以进入 Navigation Property 属性窗口 - 您也可以在模型图中右键单击它)

关于c# - Entity Framework (数据库优先)对同一表命名约定控制的多重关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26757860/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com