質問: 私は、.NETコアとEntity Frameworkコアを使用した開発中にデータベースの変更に苦しんでいます。 私が新しいモデルを作成し、 `dbContext.Database.EnsureCreated();` Startup.csでは新しいテーブルは作成されません。 これは、前に`dotnet ef database drop`する場合に限り、すべてのテーブルを作成し`dotnet ef database drop`が、新しいモデルを追加するたびにdbをシードしなければならないのはかなり面倒です。毎回より多くのマイグレーションを作成することは、私にとっては良いアイデアのようには見えません... 誰かがより良い方法を提案できますか?
回答: 残念ながら、EFコアはEF 6などの自動移行をサポートしていないようです。これは、すべての変更に対して、新しい移行を追加する必要があることを意味します。 Startup => Configureでこのコードを追加すると、最新の移行が自動的に適用されますが、ドキュメントを正しく理解すれば、変更ごとに新しい移行を追加する必要があります。 ``` using (var serviceScope app.ApplicationServices.GetService().CreateScope()) { var context = serviceScope.ServiceProvider.GetRequiredService(); context.Database.Migrate(); } ``` Ref: EntityFrameworkコア自動移行 また、流暢なAPIを使用して構造を作成する方法については、@ Nathanに同意してください。 お役に立てれば。