代码契约重写器使用强名称(sn.exe)实用程序来辞职重写的程序集。但是,在VS 2010的输出窗格中,我看到:
微软(注册商标) .NET框架强名称实用程序版本3.5.30729.1
有没有办法强制使用4.0版本的sn.exe。还是没什么区别?
发布于 2011-05-03 15:20:02
您可以修改代码契约的MSBuild目标文件,以强制它使用Version4.0SDK中的sn.exe。所讨论的目标文件通常位于C:\Program Files\Microsoft\Contracts\MsBuild\v4.0\Microsoft.CodeContracts.targets。
最简单的修改是替换行
<CodeContractsSnExe>"$(CodeContractsSdkPath)Bin\NETFX 4.0 Tools\sn.exe"</CodeContractsSnExe>使用版本指定要运行的sn.exe副本的确切路径。例如:
<CodeContractsSnExe>"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\NETFX 4.0 Tools\sn.exe"</CodeContractsSnExe>如果您需要支持替代版本,最好保留旧行,但以值为空为条件。这样,只有在需要时才能指定覆盖。
https://stackoverflow.com/questions/5867526
复制相似问题