2009-09-15 136 views
4

這是什麼意思。是否因爲我有兩個包含相同數據庫表的不同.DBML文件?350多個錯誤:類型'blah.blah.blah'已經包含一個定義?

... 
Error 343 The type 'mvc.Models.Bundle' already contains a definition for 'BundleIcon' C:\inetpub\wwwroot\Models\Assets1.designer.cs 3438 17 mvc 
Error 344 The type 'mvc.Models.Bundle' already contains a definition for 'isScorm' C:\inetpub\wwwroot\Models\Assets1.designer.cs 3459 15 mvc 
Error 345 The type 'mvc.Models.Bundle' already contains a definition for 'scormPath' C:\inetpub\wwwroot\Models\Assets1.designer.cs 3480 17 mvc 
Error 346 The type 'mvc.Models.Bundle' already contains a definition for 'CompanyID' C:\inetpub\wwwroot\Models\Assets1.designer.cs 3501 14 mvc 
... 

回答

7

是的,如果你把它們放在同一個命名空間,這將會發生。

+0

這是它,謝謝 – BigOmega 2009-09-15 15:07:32

+0

使用兩個命名空間是錯誤的嗎?我正在使用MVC應用程序中的兩個類。鉭 – user3752281 2015-11-09 18:58:35

2

好吧,我在添加另一個Linq-to-SQL .dbml時遇到了同樣的錯誤。

更具體的原因是,您不能在引用同一個表和列的同一名稱空間中有兩個單獨的.DBML。

不像在數據集,其中,可以有2個獨立的數據集(Dataset1.xsdDataset2.xsd)weach第i個的相同表和相同列,沒有那麼在LINQ的。

DataClass1.dbml與表MyTable的與列myColumnDataClass2.dbml與表還打着MyTable的與列myColumn將失敗,因爲myColumn在這兩個設計師的定義.cs文件在相同的命名空間內。

我的解決方法:我改名爲「DataClass2.dbml的MyTable的MyTable_2myColumnmyColumn_2

我然後大罵微軟,刪除DataClass2.dbml和集成,我需要到DataClass1.dbml,與其他表一起第三屆表(以避免此問題)。 DataClass1.dbml現在有大約40個表,它現在導致DataClass1.designer.cs文件擁有超過20,000行「自動生成」代碼。

可愛的,呃。

相關問題