Почему структура сущностей генерирует резервные отношения для внешних ключей? - PullRequest
1 голос
/ 18 июля 2011

У меня есть две таблицы в базе данных.Один для участника, а другой для клиента.В клиентской таблице есть два столбца для того, кто создал строку и кто изменил строку.Внешние ключи были установлены из каждого столбца для сопоставления с таблицей элементов.Все это имеет смысл, пока один не запустит Entity Framework для базы данных, и я не получу следующий код, сгенерированный для меня.

public Member()
{
   public virtual ICollection<Client> Clients { get; set; }
   public virtual ICollection<Client> Clients1 { get; set; }
}

public Client()
{
   public virtual Member MemberForCreated { get; set; }
   public virtual Member MemberForModified { get; set; }
}

Мой вопрос заключается в том, почему Entity Framework может подумать о создании резервной коллекции в таблице элементов для каждого отношения внешнего ключа к таблице клиента?Мне действительно нужны эти отношения или это то, что я могу удалить?Любая информация была бы полезна.

В качестве примечания: эти коллекции и взаимосвязи находятся в файле .edmx в коллекции свойств навигации сущностей.

1 Ответ

2 голосов
/ 18 июля 2011

EF-отношения являются двунаправленными по умолчанию.Вы можете удалить любое направление, если вам это не нужно.

Вы также можете переименовать их.Например, вы можете захотеть позвонить им Member.ClientsCreated и Member.ClientsModified.

У Джули Лерман есть видео, в котором рассматриваются однонаправленные отношения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...