Entity Framework 7データベースはどのようにシードされますか?

entity-framework-core

質問

データベースをシードする適切な方法はありますか?

私はこれを達成するための文書を見つけることができないようです。

人気のある回答

今のところ、手作業でシードする必要があります(しかし、将来的には、このために高水準APIの話があります)。

StartupクラスのConfigureメソッドでこれを行うことができます(ASP.NET 5を使用していると仮定します)。

public class Startup
{
    public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory logger)
    {
        using (var context = (MyContext) app.ApplicationServices.GetService<MyContext>())
        {
            if (env.IsDevelopment())
            {
                //Add seed code here

                context.MyEntity.Add(new MyEntity{ Id = 1 });
                //etc

                context.SaveChanges();
            }
        }
    }
}

また、 Music Storeのサンプルアプリケーションを見直すこともできます.SampleDataクラスは少し複雑で堅牢です。



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ