0

當我嘗試支架控制器與視圖ASP.NET MVC 5與模型School (Nola.Core.Models.Education)和DB上下文ApplicationDbContext (Data)MVC 5 Controller with views, using Entity Framework菜單項項目中,我得到錯誤:不能在Visual Studio腳手架控制器2013 U4

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. 

所有模型關係writen與Entity Framework Fluent API和數據庫方面的方法OnModelCreating適用這樣

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

當我刪除一個配置項,然後得到一個配置錯誤。如果評論所有配置,那麼得到錯誤說EF找不到某些型號的關係。

我使用Visual Studio Ultimate 2013 Update 4和所有更新的NuGet軟件包。你可以從https://github.com/beta-tank/nola/tree/Develop這裏得到Develop分支的項目。

P.S.我已經嘗試了很多方法從Scaffolding controller doesn't work with visual studio 2013 update 2(IDbSet,Web.config,重新安裝軟件包等),但沒有任何幫助。

回答

0

檢查Scaffolding controller doesn't work with visual studio 2013 update 2

更改上下文中使用IDbSet而不是DbSet已經整理對我來說。 該解決方案將引入另一個問題,即在此後腳手架控制器時,操作方法將使用全部不存在的FindAsync方法,並且您將有編譯時錯誤。使用FirstOrDefaultAsync方法更改所有這些FindAsync方法,並且您將很好。

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

這項工作也與異步