我刚刚升级到Visual Studio 2010,并安装了代码合同msi。当我尝试使用它时,出现v3.5和v4框架中都存在system.diagnostics.contracts.contract dll的编译器错误。有人知道我应该怎么做才能解决这个问题?谢谢。
最佳答案
如果要将使用合同的.NET 3.5项目升级到.NET 4.0,请确保删除对Microsoft.Contracts
程序集的引用。Microsoft.Contracts
程序集提供了可在.NET 2.0或3.5项目中使用的代码协定,但是默认情况下,.net 4.0在mscorlib
中提供了代码协定,因此您不需要它。它们都共享System.Diagnostics.Contracts
命名空间,因此,通过同时引用这两个名称空间,编译器将无法确定您要使用哪一个。