2016-09-18 3 views
1

バックエンドとしてAzureでホストされているwebAPIを持っています。私はエンティティを作成するためにCode-Firstを使用しています。シードメソッドを使用してDBのプリペアを事前に行うことはできますが、モデルの変更を行い、シードに何かを追加する必要があることを覚えていれば、シードメソッドを実行する方法はありません。 複数の投稿は、単純なupdate-databaseの実行を提案しています。私は参照してください: "実行シードメソッド。紺碧に公開すると、私のテーブルはまだ空です。シードをトリガするためにモデルを変更する必要はありません。クリーンなソリューションではないからです。EF runモデル変更のないシードメソッド

私はすでに、私は紺碧の側でやるべきものがあるコメント行のそれぞれが、無駄

public MyContext() : base("name=MyContext") 
    { 
     //Database.SetInitializer(new MigrateDatabaseToLatestVersion<MyContext, MyProject.Migrations.Configuration>("DefaultConnection")); 
     //Database.SetInitializer<MyContext>(new DropCreateDatabaseAlways<MyContext>()); 
    } 

を使用して試してみましたか私は1つの私のモデルを変更しない限り、それだけでは動作しませんはっきり! ?

アップデート1:

すでにI移行フォルダと私はモデルチェンジを持っている場合、DBの更新がうまく、それを有効にしてDBを更新するためのコマンドに従います。それは問題ありません。シードメソッドに物事を追加したいと思っていて、私のモデルを変更することなくそれを実行したいのであれば、唯一の問題です。

+0

Azure、プロジェクト、またはDBに何を公開していますか?あなたは、DBのローカルコピーを作成し、それに接続して、更新されるかどうか確認できますか? – DrewJordan

答えて

0

最初にコードを使用している場合、すべての移行を簡単に管理して処理できます。

パッケージマネージャコンソールを使用して「enable-migrations」と入力する必要があります。この後、Migrationsという名前のフォルダが作成されます。

詳細については、linkをご確認ください。

問題がある場合はお知らせください。

+0

マイアップデート1を読む – user1019042

関連する問題