我们有一个使用C#在.NET 4上使用Code Contracts构建的解决方案。我们希望利用Crystal Reports 13,但遇到了一个重大问题。
当我们尝试使用水晶报告时,会发生以下异常:
未解决程序集引用:BusinessObjects.Licensing.KeycodeDecoder,Version = 13.0.2000.0,Culture = neutral,PublicKeyToken = 692fbea5521e1304。
禁用(未选中)Code Contracts运行时检查时,不会发生此异常;但代码合同抱怨必须启用重写器。不幸的是,代码库中充斥着Contract.Requires<TException>(bool)
次调用,这将是一个改变为if-then-throws风格的噩梦。
还有其他人遇到过这种不兼容吗?如果是这样,他们是如何克服它的?
由于
答案 0 :(得分:0)
您是否尝试过向ContractProperties添加额外的库路径,该路径指向包含缺失dll的计算机上的目录?重写器有时会追溯比C#编译器更多的引用,导致此问题浮出水面。