13

背景實現EntityTypeConfiguration類後可以使用ASP.NET MVC + EF腳手架嗎?

的Visual Studio腳手架綁定到實體框架新的ASP.NET MVC控制器正常工作時,該機型利用數據註解或者直接線內OnModelCreating(DbModelBuilder)來形容自己的特點。

問題

然而,在我們的場景中,OnModelCreating的內容是使用單個EntityTypeConfiguration<T>類重構。當試圖通過MVC + EF腳手架來創建新的控制器下面彈出錯誤發生時:

有運行所選擇的代碼發生器的錯誤:「類型SomeModelClass甲 配置已被添加。至 參考現有配置使用Entity<T>()ComplexType<T>()方法。'

是否有修復(例如自定義代碼或項目配置)?

+0

你正在使用哪個版本的visual studio和asp.net MVC? – RBT

回答

4

這裏的東西,似乎是同一個問題,因爲你: Scaffolding controller doesn't work with visual studio 2013 update 3 and 4

這是一個似乎工作soluton:

我又增加了一些自定義的配置我的模型類之一使用流利的API添加關係。這是在OnModelCreating覆蓋中的我的dbContext類中使用以下指定的:

modelBuilder.Configurations.Add(new OrderConfiguration()); 註釋掉上面的行允許Controller腳手架按預期運行。

VS 2013更新2有一個問題,腳手架提出了一個無用的錯誤,沒有進一步的信息。在已安裝的Update 3中,它提供了足夠的詳細信息來跟蹤潛在的問題。

+0

這是一個迴避,而不是一個解決方案。斷開生成器(即註釋掉「Configurations.Add()」行)可以防止腳手架意識到關聯的實體屬性,這正是腳手架需要處理的。 –

相關問題