Структура сущности Многопластовый многозначный
-
12-12-2019 - |
Вопрос
Я сначала работаю с кодом EF4.1 и пытаюсь создать несколько значений соотношений, где там должны быть связаны таблицы.Пожалуйста, смотрите небольшой фрагмент кода Beloow:
class Event
{
int EventId { get; set; }
ICollection<Contact> Contacts { get; set; }
}
class Contact
{
int ContactId { get; set; }
ICollection<Relation> Relations { get; set; }
}
class Relation
{
int RelationId { get; set; }
string Name { get; set; }
}
.
Так что объект контактов может иметь много разных типов отношений, таких как «мать», «отец», «брат» и т. Д.
для контакта - это многозначное;Отношение к контакту однозначно.
в SQL, мы только что сделали таблицу ссылок и имели все три идентификатора свойств (EventiD, ContactID, RelationID);Однако в коде первым, Как бы вы представляли эту связь?
Решение
То же, что и база данных, которую вы должны создать объект отображения, как контактные элементы, такие как таблица сопоставления в базе данных.
class Event
{
int EventId { get; set; }
ICollection<ContactEvent> ContactEvents { get; set; }
}
class ContactEvent
{
int EventId {get;set;}
int ContactId {get;set;}
public virtual Event Event {get; set;}
public virtual Contact Contact {get;set;}
}
class Contact
{
int ContactId { get; set; }
ICollection<ContactEvent> ContactEvents { get; set; }
ICollection<Relation> Relations { get; set; }
}
class Relation
{
int RelationId { get; set; }
string Name { get; set; }
public virtual Contact Contact {get; set}
}
.