2016-07-16 7 views
5

以前のバージョンのEntity Frameworkでは、コードマイニングは、DbMigratorクラス(たとえば、利用可能な移行を確認して適用する)でプログラムで制御することができました。そのクラスはまだどこかに存在するのでしょうか、機能的な置き換えがありますか?私は代理人を示した初期のRC版の投稿を見つけましたが、それもまたCore 1.0にはないようです。 CLIを使用して問題なく移行を制御できますが、カスタムツールシナリオ用のコード内ソリューションが必要になると思います。エンティティフレームワークコア1.0コードを使用したコードマイグレーション?

+0

が、ASP.NET MVCコア1.0とEntity Frameworkのコア1.0のため、これを参照してください。 http://stackoverflow.com/質問/ 38282138/run-database-migrations-using-entity-framework-on-application-start –

答えて

6

機能の置き換えは、主にMicrosoft.EntityFrameworkCore.Migrations名前空間にあるAPIのいくつかの場所にあります。

探すためにいくつかの場所:( DbContext.Database.Migrate()を呼び出すのと同じである)

を見つけるために、これらのAPIを使用することは、通常、 ervice out of internal EF Core's service container.これは、dbcontextで.GetService<TService>()を呼び出すことによって行われます。

例:

var migrator = context.GetService<IMigrator>().Migrate(); 
似た何かを探して、この質問に来る人のために
+0

GetService メソッドを自分のコンテキストで使用することはできません。私はそれが拡張メソッドであると仮定していますか?どのような依存パッケージと名前空間にそのメソッドが含まれていますか? –

+0

これは 'Microsoft.EntityFrameworkCore.Infrastructure'名前空間にあります。余分なパッケージは必要ありません。 – natemcmaster

関連する問題