这篇文章主要为大家详细介绍了VS2017添加EF的MVC控制器报错的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
VS2017添加EF的MVC控制器报错的解决方法,供大家参考,具体内容如下
1. 错误描述:no database provider has been configured fot this DbContext.
此类错误是上下文的注册造成的.解决方式在DBContext中重写OnConfiguring方法去注入数据库连接.
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 DbSet0e70e25b671ebf29d85a9ac685dc29fa XXX{ get; set; }注册的.将DbSet0e70e25b671ebf29d85a9ac685dc29fa中的类改成2c873b6a8cfc7d72d9ff9428d31cc86c这种完整声明即可解决
以上是VS2017添加EF的MVC控制器报错的解决方法的详细内容。更多信息请关注PHP中文网其他相关文章!