EF не создает ассоциацию внешних ключей из внешнего ключа в таблице
У меня есть таблица tblEvent и другая таблица tblContact. В tblEvent есть поле ContactID, связанное внешним ключом с ContactID в tblContact. Я проверял тройку; внешний ключ находится в базе данных.
Модель Entity Framework НЕ генерирует для нее свойство навигации и ассоциацию внешних ключей, как и для других внешних ключей.
Что может отличаться от этого внешнего ключа, что EF не создает для него свойство навигации?
Спасибо!
Ответы
Ответ 1
Я нашел решение здесь:
Почему EF 4 не создает связь для отношения FK к столбцу с уникальным индексом?
Причина, по которой он не был распознан, состоял в том, что таблица имела уникальный некластеризованный индекс в поле внешнего ключа.
По-видимому, уникальный, некластеризованный индекс допускает нулевое значение, которое невозможно сопоставить.
Ответ 2
если вы используете 3.5sp1, это может быть проблемой.
В этой статье рассматриваются некоторые изменения, и если вы еще не можете вручную добавить ассоциацию fk в конструкторе объектов, как описано в статье.
http://blogs.msdn.com/b/efdesign/archive/2009/03/16/foreign-keys-in-the-entity-framework.aspx