.NETコアに移植されているアプリケーションは、SQLiteで新しいEFコアを使用します。私は、アプリケーションが最初に実行されたときに自動的にデータベースとテーブル構造を作成したいと思います。私は、エンドユーザがこれらのコマンドを入力したくないとアプリが最初に使用するデータベースを作成し、セットアップ持つことを好むだろうが、これはマニュアルを使用して行われEFコアのドキュメントによるとEntity Frameworkコアのデータベースを自動作成
dotnet ef migrations add MyFirstMigration
dotnet ef database update
を指令します。 EF 6については、
Database.SetInitializer(new CreateDatabaseIfNotExists<MyContext>());
のような機能がありますが、EFコアではこれらは存在しないようです。私は、EFコアと同等のものに関するサンプルやドキュメントを見つけることができず、EFコアのドキュメントに欠けている機能のリストには記載されていません。私はモデルクラスを既にセットアップしているので、モデルに基づいてデータベースを初期化するためのコードを書くことができますが、フレームワークが自動的にこれを行うと、ヒープがより簡単になります。モデルを自動構築したり、マイグレーションしたりするのではなく、新しいデータベースにテーブル構造を作成するだけです。
ここで何か不足していますか、またはEFコアに自動作成テーブル機能がありませんか?
私はまだかなりですEFの新機能では、現在のデータベースファイルを使用して、Visual StudioからEF 6コードを使用してデータ構造を定義するクラスを作成しました。その後、これらを新しいdotnet core VSソリューションにカット/ペーストしました。これらは移行ではないと思います。上記のコードを使用する前にマイグレーションファイルを作成する必要がありますか? – deandob
あなたがマイグレーションを使用していない場合、申し訳ありませんが私の答えで間違いました、コマンドcontext.Database.EnsureCreated()/ EnsureDeleted()、https://blogs.msdn.microsoftで詳細を使用することができます。 com/dotnet/2016/09/29/implementation-seeding-custom-conventions-and-ef-core-1-0/ –
よろしくお願いします。 – deandob