Внешний ключ Entity Framework, когда имя не совпадает - PullRequest
2 голосов
/ 26 мая 2019

У меня есть таблица с именем AccountValues, на которую я хотел бы сослаться из моей таблицы Account.Однако вместо того, чтобы использовать AccountValuesId и AccountValues, я бы хотел, чтобы он был немного более описательным, добавив префикс MostRecent_ следующим образом:

[ForeignKey("AccountValues")]
public long MostRecent_AccountValuesId { get; set; }
public AccountValues MostRecent_AccountValues { get; set; }

Мой вопрос: куда мне поместить мой ForeignKeyатрибута, так что я получаю фактический внешний ключ (например, FK_Something), а также MostRecent_AccountValues автоматически работает?

Примечание: мое соглашение не должно иметь имена таблиц во множественном числе.Но здесь AccountValues является множественным числом только потому, что в каждой строке есть несколько различных значений.

1 Ответ

3 голосов
/ 26 мая 2019

Проблема в вашем ForeignKey имени в свойстве public long MostRecent_AccountValuesId. ForeignKey имя должно соответствовать имени свойства навигации следующим образом:

[ForeignKey("MostRecent_AccountValues")] // <-- Here it is
public long MostRecent_AccountValuesId { get; set; }
public AccountValues MostRecent_AccountValues { get; set; }
...