2017-12-07 14 views
0

私は、移行中に、テーブルにデータを挿入したいと思います。出来ますか?移行にはパラメータのないコンストラクタが必要です。私はStartup.csファイルで定義されたdbコンテキストを使用したいと思っています。それはどうですか?EFコア移行挿入データ

+0

https://forums.asp.net/t/2122687.aspx?How+to+Seed+Data+in+Core+これをチェックしてください – itikhomi

答えて

0

の移行は、新しい「バージョン」にあなたのDBを「アップグレード」するプロセスです。あなたがそれらを安全に使用することはできませんので、この時には、既存のDBテーブル(「旧バージョン」)、あなたのクラス(エンティティ)(「新バージョン」)を一致させる必要はありません。

移行時に、あなたは生のSQLコマンドを使用して、テーブルやレコードでのみ動作しなければなりません。あなたは、移行Up()コードに手動でそれらを置く、そのような更新のためmigrationBuilder.Sql("UPDATE ...");を使用することができます。

あなたはエンティティクラスを使用して、データの変更を行う必要がある場合 - あなたは"Seed Data" solution@itikhomiからのコメント)を使用しますが、あなたには、いくつかのバージョンチェック、その内部を行う必要がありますので、それは、あなたのアプリケーションが起動するたびに実行されることを覚えておいてください。

関連する問題