Я создал представление в своей базе данных, которое я хотел бы включить в мою модель сущности. Тем не менее, когда я пытаюсь обновить модель сущности через VS 2008, предупреждающее сообщение информирует меня о том, что добавляемая мной таблица или представление не имеет первичного ключа.
Похоже, что для добавления вида к модели, это должно быть ключевое поле! Как я могу добавить это представление в мою модель, если представлениям не разрешено иметь ключевое поле, по крайней мере, в Firebird, который использует DBMRS, который я использую.
Есть идеи, как это решить?
Здесь есть отличный ответ: Entity Framework и SQL Server View (см. Принятый ответ: https://stackoverflow.com/a/2715299/53510 .)
EF выводит PK для представлений, комбинируя все ненулевые поля. Вы можете использовать ISNULL и NULLIF, чтобы манипулировать обнуляемостью столбцов представления, заставляя EF выбирать нужный вам PK.