0

我有一個多層體系結構C#項目,我不想從演示文稿添加對我的DAL層的引用,所以我需要在運行時注入ApplicationDbContext用於標識,對於這種方法,我在業務層爲此寫了一個擴展方法。 (表示層具有參考業務層),並加入startup.cs下面這個方法:注入ApplicationDbContext在多層項目中使用Aspnet核心標識

public static IdentityBuilder AddDbContext(this IdentityBuilder builder, IServiceCollection services, string connStr) 
    { 
     services.AddTransient<ApplicationDbContext>(_ => new ApplicationDbContext(connStr)); 

     builder.AddEntityFrameworkStores<ApplicationDbContext>() 
       .AddDefaultTokenProviders();    

     return builder; 
    } 

Startup.cs

public void ConfigureServices(IServiceCollection services) 
    {   
     services.AddIdentity<ApplicationUser, IdentityRole>() 
      .AddDbContext(services, Configuration.GetConnectionString("DefaultConnection")); 

     services.AddMvc(); 

     // Add application services. 
     services.AddTransient<IEmailSender, AuthMessageSender>(); 
     services.AddTransient<ISmsSender, AuthMessageSender>(); 
    } 

但是,當我跑我的應用程序,它試圖在崩潰跑步。

錯誤頁面如下:

enter image description here

回答

0

我發現這個問題, 其實這個問題是因爲DI的不是,這是因爲我沒有用指令爲我DOMIAN項目加入到_ViewImports。

相關問題