сущность имеет множество коллекций других сущностей EF 4.2 - PullRequest
0 голосов
/ 29 ноября 2011

Мне нужно смоделировать большое количество таблиц в моем домене ... Я пытаюсь выяснить, как правильно нормализовать следующее:

У меня есть Address Entity, который является абстрактным

StreetAddress и POBoxAddress получаются из адреса

Многим другим объектам в этом домене понадобится набор адресов, например:

Vendor.Addresses
CondoComplex.Addresses
Employee.Addresses
PositionShift.Addresses
Location.Addresses
Guest.Addresses
Property.Addresses
Owner.Addresses

и т. Д. ... много других сущностей ... Так что я не понимаю, как хранить эти ассоциации в EF? Как многие-многие т / ч со столбцом дискриминатора или я просто скучаю по лесу для деревьев, и есть менее сложное решение?

Ответы [ 2 ]

0 голосов
/ 29 ноября 2011

Оставляя в стороне сложность вашего объекта Address, если связанные объекты не собираются делиться адресами, я не думаю, что есть смысл создавать отношения многие ко многим. Я не уверен, как выглядит ваш абстрактный класс Address, но я бы просто сказал

public List<Address> Addresses {get;set;}

в ваших организациях

0 голосов
/ 29 ноября 2011

Наследование чрезмерно используется в отображениях сущностей (на самом деле, оно обычно используется слишком часто, но особенно в случае отображаемых объектов, , которые на самом деле не являются сильно ОО в первую очередь и вообще не должны иметь поведения).В большинстве случаев вам следует избегать этого, поскольку это значительно усложняет запросы и структуры данных.Вам действительно нужны два разных типа для StreetAddress и POBoxAddress?Зачем?Почтовому отделению все равно.

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

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