C# 如何确定生成程序集时使用的MSBuild版本?
我正在尝试通过MSBuild运行我的第一个xUnit.net测试,并遵循文档。这是我的项目文件:C# 如何确定生成程序集时使用的MSBuild版本?,c#,.net,msbuild,xunit,xunit.net,C#,.net,Msbuild,Xunit,Xunit.net,我正在尝试通过MSBuild运行我的第一个xUnit.net测试,并遵循文档。这是我的项目文件: <?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="14.0" DefaultTargets="Build;Test" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Import Project="..\package
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build;Test" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\xunit.runner.msbuild.2.0.0\build\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.runner.msbuild.props"
Condition="Exists('..\packages\xunit.runner.msbuild.2.0.0\build\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.runner.msbuild.props')" />
<!--Extra lines omitted for brevity-->
<UsingTask AssemblyFile="xunit.runner.msbuild.dll"
TaskName="Xunit.Runner.MSBuild.xunit"/>
<Target Name="Test">
<xunit Assembly="bin\$(Configuration)\Core.dll"/>
</Target>
</Project>
我已经检查了拼写是否正确,但是它仍然给我这个错误。net文档对此只字不提(或者至少从我所看到的地方看),所以我现在只能做些什么了。它告诉我可以检查生成程序集时使用的MSBuild的版本,但我该如何检查?生成程序集甚至需要MSBuild吗
(MSBuild说它的版本是14.0.23107.0,如果这很重要的话,我有VS2015。)
谢谢大家! MSBuild基于任务和目标。您可以在.csproj中看到它的样子,通常在结尾。任务对象是在您使用的MSBuild版本中定义的,例如位于
C:\ProgramFiles(x86)\MSBuild\12.0\Bin
中
MSBuild的版本通常遵循以下.NET framework:
version 1.0: 2006
version 2.0:
version 3.5: 2011
您可能错过了正确版本的MSBuild。或者您可以尝试使用不同的版本,而不是ToolsVersion=“14.0”
这里的“2006”代表什么?没有VS 2006;NET framework 3.0于2006年发布。NET framework 1.0于2002年发布。
version 1.0: 2006
version 2.0:
version 3.5: 2011