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。
检查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