我有一个自定义SharePoint作业,它在尝试运行时出错。当我看到错误时,我看到了:
无法加载文件或程序集 'Microsoft.Contracts,Version = 1.0.0.0, 文化=中性, PublicKeyToken = 736440c9b414ea16'或 其中一个依赖项。系统 找不到指定的文件。
我搜索过我的解决方案,并没有任何参考。这可能来自哪里?
答案 0 :(得分:4)
Microsoft.Contracts(CodeContracts)是一个程序集,其中包含“提供与语言无关的方式来表达.NET程序中的编码假设”。
也许有些外部装配正在搜索这个。
答案 1 :(得分:3)
如果您使用的是.NET 3.5或更早版本,则需要添加对Microsoft.Contracts.dll
的引用,该引用安装在:
%PROGRAMFILES%/Microsoft/Contracts/PublicAssemblies
答案 2 :(得分:2)
Microsoft.Contracts
是Microsoft Code Contracts系统的主要程序集。如果您的实际代码没有使用它,它可以被引用的库使用。
理论上,您应该能够删除与其相关的所有代码,并且您的程序应该运行相同的代码。毕竟这只是一种强制实践和帮助测试的方式。在实践中,我不太确定......
代码合同提供了一个 语言无关的表达方式 .NET程序中的编码假设。 合同采取的形式 前提条件,后置条件和 对象不变量。合同充当 检查外部文件 和内部API。合同是 用于通过运行时改进测试 检查,启用静态合同 验证和文档 代。代码合同带来了 合同设计的优点 编程到所有.NET编程 语言。我们目前提供三种 工具:
完整版仅适用于VS 2010 Premium / Ultimate,但显然您可以获得其他版本VS的“标准版”。
答案 3 :(得分:0)
您可以在这里找到图书馆 C:\ Program Files \ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.0 \ mscorlib.dll