Создать ассоциацию в Entity Framework? - PullRequest
3 голосов
/ 30 марта 2011

У меня есть база данных, в которой таблицы не имеют первичных / внешних ключей. Эта база данных является сторонней, поэтому я не хочу редактировать основную структуру базы данных. Вместо этого я создал модель EF, в которой есть таблицы, с которыми я хочу работать ... теперь я хотел бы на уровне модели определить ассоциации между различными объектами. Например, у меня есть объект Person и объект Demographic, они имеют общий столбец people_code_id, который будет идентичен ... но я не могу понять, как заставить эту ассоциацию отображаться, а затем как получить доступ эти дополнительные столбцы через EntityDataSource?

Ответы [ 2 ]

5 голосов
/ 30 марта 2011

Сначала вы должны определить первичные ключи в вашей модели сущности. Каждый объект должен иметь первичный ключ, иначе вы не сможете определить отношение, так как все ваши объекты станут доступны только для чтения. После того, как у вас определены первичные ключи, и ваши связанные таблицы содержат свойства внешнего ключа (просто идентификатор PK связанной сущности), вы можете создавать ассоциации вручную. Здесь - общий подход, как это сделать. Это должно работать, даже если у вас нет определенных отношений в БД.

0 голосов
/ 30 марта 2011

EF не будет отображать ассоциации, если они не определены в схеме базы данных.Вы по-прежнему можете использовать ключи для объединения, как в обычном SQL, для сопоставления ключей и их ссылок.

Если вы добавили ограничения к схеме БД, вам не нужно изменять сами таблицы идолжно быть легким, если у вас уже нет проблем с ограничениями.

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