Как назвать внешний ключ в Entity Framework CoreC#

Место общения программистов C#
Anonymous
Как назвать внешний ключ в Entity Framework Core

Сообщение Anonymous »

Похоже, что Entity Framework Core не учитывает пользовательское имя внешнего ключа, которое я указал в качестве атрибута свойства. Я немного обеспокоен, потому что изначально думал, что это сработает.
Отношение 1-ко-многим между CollectionModel и ItemModel (слишком упрощенный пример):

Код: Выделить всё

[Table("Collections")]
public class CollectionModel
{
[Key]
public int Id { get; set; }

public string name {get; set; }

public List Items { get; set; }
}

[Table("Items")]
public class ItemModel
{
[Key]
public int Id { get; set; }

[ForeignKey("FK_Item_CollectionId")] // No sure if it actually respects the convention..
public int CollectionId { get; set; }
}
По сути, это соответствует этому примеру (правда, Entity Framework 6). Я уже сталкивался с некоторыми потоками stackoverflow, которые используют некоторые Fluent API, но предпочел бы избегать их (т. е. у меня есть некоторые другие проблемы). Когда я переношу домен (который находится в отдельном проекте от Entity Framework), я получаю следующее имя FK_Items_Collections_ItemModelId, которое слишком длинное.
Я что-то упустил?
Спасибо за любую информацию.

Подробнее здесь: https://stackoverflow.com/questions/644 ... ework-core

Вернуться в «C#»