我将MVC项目放在一个程序集中,Data Project包含另一个程序集中的DbContext类,其中Entity / Model类是同一解决方案中的另一个。
每当我尝试使用DbContext菜单创建带有脚手架的View时,选择DbContext继承的类,我得到此运行时错误:
运行所选代码生成器时出现问题"对象引用未设置为对象实例"
控制器类:
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult About()
{
ViewBag.Message = "Your application description page.";
return View();
}
public ActionResult Contact()
{
ViewBag.Message = "Your contact page.";
return View();
}
[HttpGet]
public ActionResult Login()
{
return View();
}
[HttpPost]
public ActionResult Login(string username, string password)
{
return View();
}
}
DbContext类:
public class BlogDbContext : DbContext
{
public DbSet<Login> Logins { get; set; }
public DbSet<User> Users { get; set; }
public DbSet<Role> Roles { get; set; }
public DbSet<Permission> Permissions { get; set; }
public DbSet<Blog> Blogs { get; set; }
public DbSet<BlogCatagory> BlogCatagories { get; set; }
public DbSet<BlogType> BlogTypes { get; set; }
public DbSet<Comment> Comments { get; set; }
public BlogDbContext() :base("name=MVPDB")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
}
}
现在假设,我想创建一个View with Login with Edit并选择了DbContext类我弹出一个窗口说:
运行所选代码生成器时出现问题&#34;对象引用未设置为对象实例&#34;
答案 0 :(得分:0)
由于实体模型而发生此错误。
我建议您删除并重新创建用于创建此视图的实体数据模型