2017-10-05 3 views
0

マイstartup.csを行ってきました私はそこシードしようと間違っ

public void Configure(IApplicationBuilder app, IHostingEnvironment env) 
     { 
      if (env.IsDevelopment()) 
      { 
       app.UseDeveloperExceptionPage(); 
       app.UseBrowserLink(); 
      } 
      else 
      { 
       app.UseExceptionHandler("/Home/Error"); 
      } 

      app.UseStaticFiles(); 

      app.UseMvc(routes => 
      { 
       routes.MapRoute(
        name: "default", 
        template: "{controller=Home}/{action=Index}/{id?}"); 
      }); 

      SeedData.Seed(app); 
     } 

と私のシードクラスである:

public static class SeedData 
{ 
    public static void Seed(IApplicationBuilder app) 
    { 
     var _dbContext= app.ApplicationServices.GetRequiredService<BlogDbContext>(); 

     _dbContext.Database.EnsureDeleted(); 

     _dbContext.Add<User>(new User { UserName = "Niko", Password ="123",EmailAddress="[email protected]",UserType= Models.User.Type.Visitor,RegistDate=System.DateTime.Now}); 

     _dbContext.Add<Admin>(new Admin{EmailAddress="[email protected]",Password="123"}); 

     _dbContext.SaveChanges(); 
    } 
} 

I NugetでUpdate-Databaseパッケージ管理:

クラス 'プログラム'でメソッド 'BuildWebHost'を呼び出す際にエラーが発生しました。アプリケーションサービスプロバイダなしで続行する。エラー:スコープされたサービス 'Blog.DAL.Context.BlogDbContext'をルートプロバイダから解決できません。

タイプのオブジェクトのBlogDbContext 'を作成できません。 'IDesignTimeDbContextFactory'の実装をプロジェクトに追加するか、またはデザイン時にサポートされる追加のパターンについてはhttps://go.microsoft.com/fwlink/?linkid=851728を参照してください。

答えて

0

私はAsp.Net Core 1.xと2.0の間に何か違いがありますので、私はprogram.csにseedメソッドを書くだけです

関連する問題