Моя команда начинает новый проект, используя Entity Framework Code First. У нас есть новая, пустая база данных для проекта; схема будет управляться с помощью миграций Code First.
Однако есть один фрагмент данных, к которому нам нужно будет получить доступ, который находится во внешней базе данных (управляемой другим проектом). Нам был предоставлен доступ к этим данным через представление в нашей собственной базе данных, которое сопоставляется с таблицей во внешней базе данных.
Из-за этой настройки у нас есть два конкурирующих требования:
- При создании миграции Entity Framework не должен не пытаться создать или изменить представление.
- Во время выполнения мы по-прежнему должны иметь возможность запрашивать/вставлять/обновлять/удалять данные через представление с помощью Entity Framework, как если бы это была обычная таблица.
Мы рассмотрели как атрибут [NotMapped]
, так и метод .Ignore()
, но, похоже, оба они удовлетворяют только одному из двух требований, приведенных выше.
Возможна ли эта конфигурация с использованием Entity Framework Code First или нам нужно будет переключиться на Database First?
Мы используем Entity Framework Core версии 2.1.1.