VS2017添加EF的MVC控制器報錯的解決方法,供大家參考,具體內(nèi)容如下
1. 錯誤描述:no database provider has been configured fot this DbContext.
此類錯誤是上下文的注冊造成的.解決方式在DBContext中重寫OnConfiguring方法去注入數(shù)據(jù)庫連接.
DbContext中:
public static string ConnectionString { get; set; }protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder){ optionsBuilder.UseSqlServer(ConnectionString); base.OnConfiguring(optionsBuilder);}
在Startup.cs中
public void ConfigureServices(IServiceCollection services) { // Add framework services. var sqlserverConnection = Configuration.GetConnectionString("SQLServerConnection"); DbContext.ConnectionString = sqlserverConnection;//將配置連接傳入DbContext中 services.AddDbContext<DbContext>(options => options.UseSqlServer(sqlserverConnection)); services.AddMvc();}
2.錯誤描述:Could not add Model type XXX to DbContext
錯誤描述沒有注冊DbSet屬性.但實際上是有 public DbSet<XXX> XXX{ get; set; }注冊的.將DbSet<XXX>中的類改成<命名空間+類名>這種完整聲明即可解決
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選