Can't脚手架控制器在Visual Studio 2013 U4

本文关键字:Visual Studio 2013 U4 控制器 脚手架 Can | 更新日期: 2023-09-27 17:52:48

当我尝试在ASP中脚手架控制器与视图。. NET MVC 5项目与MVC 5 Controller with views, using Entity Framework菜单项模型School (Nola.Core.Models.Education)和DB上下文ApplicationDbContext (Data)我得到错误:

A configuration for type 'Nola.Core.Models.Users.ApplicationUser' has already been added. To reference the existing configuration use the Entity<T>() or ComplexType<T>() methods.

Entity Framework Fluent API写的模型的所有关系,并应用于DB上下文的OnModelCreating方法

modelBuilder.Configurations.Add(new ApplicationUserConfiguration());

当我删除一个配置项,然后得到错误的下一个配置。如果注释了所有的配置,那么得到错误说EF不能找到一些模型的关系。

我使用Visual Studio Ultimate 2013 Update 4和所有更新的NuGet包。你可以从这里获得项目https://github.com/beta-tank/nola/tree/Develop在Develop分支。

注:我已经尝试了许多方法从脚手架控制器不工作与visual studio 2013更新2 (IDbSet, Web。

Can't脚手架控制器在Visual Studio 2013 U4

检查Scaffolding控制器无法与visual studio 2013 update 2兼容

改变上下文使用IDbSet而不是DbSet为我排序。这个解决方案会引入另一个问题那就是当你在那之后搭建控制器时,动作方法将会使用FindAsync方法这并不存在你会有编译时错误。用FirstOrDefaultAsync方法改变所有的FindAsync方法,你就可以开始了。

modelBuilder.Configurations.Add(new ApplicationUserConfiguration());
modelBuilder.Entity<ApplicationUser>();
modelBuilder.Entity<aaaaa>();
modelBuilder.Entity<bbbbb>();
modelBuilder.Entity<ccccc>();
base.OnModelCreating(modelBuilder);

这个也可以用async