这是什么意思。是因为我有两个不同的.DBML文件包含相同的数据库表吗?
...
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
...
答案 0 :(得分:7)
是的,如果你将它们保存在同一名称空间中,就会发生这种情况。
答案 1 :(得分:2)
好的,我在添加另一个Linq-to-SQL .dbml时遇到了同样的错误。
更具体的原因是你不能在引用相同表和列的同一名称空间中有2个单独的.DBML。
与数据集不同,在数据集中,您可以使用2个单独的数据集( Dataset1.xsd 和 Dataset2.xsd ),并使用相同的表并且相同的列,在Linq中不是这样。
DataClass1.dbml ,表格 MyTable ,列 myColumn , DataClass2.dbml ,表格也名称<列> myColumn 的strong> MyTable 将失败,因为 myColumn 在同一命名空间中的两个designer.cs文件中定义。
我的解决方法:我将' DataClass2.dbml的 MyTable 重命名为 MyTable_2 ,将 myColumn 重命名为 myColumn_2 强>
然后我诅咒了微软,删除了 DataClass2.dbml ,并将我需要的第三个表格与其他表格一起整合到 DataClass1.dbml 中(以避免此问题)。 DataClass1.dbml 现在有大约40个表,现在导致 DataClass1.designer.cs 文件有超过20,000行'自动生成'代码。
可爱,呃。