EF 6 中的导航属性命名

问题描述 投票:0回答:1

我在一个表中有多个字段引用一个表的主键:

  1. 用户
    1. CountryId 整数
    2. CurrencyCountryId int
    3. MobileCarrierCountryId int
  2. 国家
    1. ID 整数

当我在 EF 中导入此结构时,它分别将 CurrencyCountry 和 MobileCarrierCountry 的导航属性搭建为 Country1 和 Country2,尽管我对数据库中的外键使用了正确的命名约定,如 FK_User_Country_CurrencyCountry 和 FK_User_Country_MobileCarrierCountry。

我尝试将外键命名为 FK_User_CurrencyCountry 和 FK_User_MobileCarrierCountry,但它仍然只生成 Country1 和 Country2。

一个解决方案是在

edmx
文件中手动重命名导航属性,但我不知道这是否有效——在我将导航属性重命名为我想要的内容后,删除了一个模型并重新生成,以检查是否用户表的导航属性恢复为默认值,但事实并非如此。

c# entity-framework foreign-keys entity-framework-6 navigation-properties
1个回答
0
投票

我遇到过同样的事情。我只是重命名了 edmx 文件中的属性,从来没有遇到过问题。

我不知道 FK 的名称会影响导航属性的名称。我有时会给 FK 一个“非标准”名称,但我从未见过 nav 属性有除目标表之外的任何其他名称(在需要时加上序列号以使名称唯一)。

© www.soinside.com 2019 - 2024. All rights reserved.