#ef-code-first #entity-framework-4.1
#ef-code-first #entity-framework-4.1
Вопрос:
Использование codefirst с существующей базой данных может быть довольно сложной задачей, поскольку все не соответствует соглашениям.Все еще не знаю, что такое все соглашения, но вот и все..
Теперь, если бы я удалил все соглашения, нужно ли мне все еще выполнять сопоставление fks и многих ко многим и т.д…
Есть ли какие-либо проблемы при этом.
есть предложения?
Ответ №1:
Если вы удалите все соглашения, вам придется сопоставить почти все с fluent API. Любое автоматическое обнаружение, такое как внешние ключи, первичные ключи и т.д., Выполняется с помощью соглашений. Также перевод атрибутов аннотации данных в отображение выполняется с помощью соглашений.
Комментарии:
1. спасибо за ваш ответ и время. Мое личное мнение таково, что, хотя code first предназначен для тех случаев, когда у вас нет базы данных, реальность такова, что большую часть времени база данных уже существует. Я просто хотел бы, чтобы было сделано больше для создания последовательного сопоставления, которое требуется, когда db уже установлена, без полного перехода dbfirst.
2. Проблема в том, что вся цель DbContext API заключалась в поддержке code-first. Это не должно было использоваться с существующей базой данных без EDMX. Люди делают это, потому что это частично работает, но это не предполагаемое использование.