我们最近将所有 .NET 项目从 VS2005 升级到 VS2010。作为这一举措的一部分,我们已从使用 MSBuild 3.5 编译升级到 MSBuild 4.0。我们所有的编译都来自命令行,使用以下命令(或类似命令):
msbuild.exe /Target:Publish <solution> /ToolsVersion:2.0
这似乎没有问题。但是,我们刚刚注意到我们现在在 ClickOnce 应用程序清单中依赖于 .NET 4.0。在 3.5 下,我们将有以下内容:
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="2.0.50727.0" />
</dependentAssembly>
</dependency>
在 4.0 下,此版本号已增加到 4.0.30319.0。如果我们从 VS2010 本身发布,一切似乎都正常工作(版本号和以前一样是 2.0)。
作为最后的手段,我们可以修改 .manifest、resign、更新/resign 部署清单,但这听起来像很多步骤。有什么地方可以控制这个吗?有没有人遇到过上述问题?
干杯,丹尼尔B。