Почему для этапа добавления-миграции EF Migrations в Entity Framework требуется строка подключения к базе данных?

Я пытаюсь использовать и понимать EF Migrations (используя EF 4.3.1, Code First). Чтобы создать новое изменение, я должен использовать такую команду:

Add-Migration MyMigration
   -ConnectionString "Data Source=.;Initial Catalog=mydb;" 
   -ConnectionProviderName "System.Data.SqlClient"
   -StartUpProjectName MyWebsite 
   -ProjectName MyEF.Migrations

Почему Add-Migration требует данные строки подключения?Update-Database нужен тот, который имеет смысл. Но разве у Add-Migration нет всего, что нужно, от DbContext и Конфигурации?

Это не просто пустое чудо, это очень запутанно, чтобы дать ему базу данных, потому что у нас есть «многопользовательский режим». вещь, где требуемая база данных является гибкой и может меняться от запроса к запросу, не говоря уже о статической компиляции. Так что еслиAdd-Migration на самом деле использует эту базу данных для чего-либо, у нас есть проблема.

ОБНОВЛЕНИЕ: Мы отказались от EF Migrations и используемСвободный Мигратор вместо этого и счастливы. Это намного, намного быстрее, даже если учесть тот факт, что нам нужно написать несколько вещей дважды (один раз для объекта EF и один раз для миграции), и у него нет проблем, обсуждаемых в этом вопросе.

Ответы на вопрос(4)

Ваш ответ на вопрос