Utworzyłem aplikację MVC 3.0 przy użyciu Visual Studio 2012, .NET 4.5 i Entity Framework 5.0.Entity Framework Code First Data Migrations nie działa z VS2012 Web Deploy
Korzystanie z migracji po pierwszym kodzie danych, jestem w stanie poprawnie propagować zmiany modelu w mojej lokalnej testowej bazie danych, ale nie mogę się dowiedzieć, jak to zrobić, gdy wdrażam moje serwery pomostowe i produkcyjne za pomocą narzędzia Web Deploy.
Czytałem następujący artykuł ...
http://msdn.microsoft.com/en-us/library/dd394698(v=vs.110)#dbdacfx
... co wyjaśnia, co ma się stać, ale to nie działa dla mnie, jako Web Deploy Wydaje stanie wykryć, że używam Struktura Entity. Tutorial pokazuje pole wyboru, aby umożliwić wykonanie kod najpierw migracji ...
... ale mój dialogowe pokazuje tylko Update Database
wyboru dla każdej bazy danych.
Przeczytałem, że aby Visual Studio wykryło użycie kontekstu Entity Framework, Web.config
musi zawierać element, który je definiuje. Oto mój:
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<contexts>
<context type="MyContext, MyAssembly">
<databaseInitializer type="System.Data.Entity.MigrateDatabaseToLatestVersion`2[[MyContext, MyAssembly], [MyConfig, MyAssembly]], EntityFramework">
<parameters>
<parameter value="MyConnectionStringName"/>
</parameters>
</databaseInitializer>
</context>
</contexts>
</entityFramework>
Wszelkie sugestie będą bardzo mile widziane.
Dzięki,
Tim
Dbamy o wyjaśnienie różnic? –
@Richard: w obrębie nowo utworzony profil zawiera szereg dodatkowych elementów , z których każdy reprezentuje klasę kontekstu. Zakładam, że istnieje pewien proces wykrywania, który uruchamia się po pierwszym uruchomieniu Web Deploy, który nie jest wykonywany jako część konwersji rozwiązania VS2012. –