Visual Studio 2012 中的 .NET 4.5.1 预览支持

标签 .net visual-studio-2012 nuget nuget-package visual-studio-2013

首先让我为我遇到的错误添加一些上下文,我已经安装了 .NET 4.5.1 预览版,我在 VS 2012 中注意到的第一件事是 .NET 4.5.1 未在可用框架中列出。我不确定这是否是正确的行为,因为这只是 4.5 的升级,所以我想 VS 2012 应该列出它。

此外,当我安装 VS 2013 预览版、将项目升级到 .NET 4.5.1 并在 VS 2012 中打开解决方案时,新的 .NET 版本再次出现,所以我不确定这是否是 VS 2012 中的错误?好的,现在我在 VS 2012 中有 .NET 4.5.1,当我尝试构建项目时,出现以下错误

Error   3   The task factory "CodeTaskFactory" could not be loaded from the assembly "C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Build.Tasks.v4.0.dll". Could not load file or assembly 'file:///C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Build.Tasks.v4.0.dll' or one of its dependencies. The system cannot find the file specified.  D:\Projects\MyProject\Master\Source\.nuget\nuget.targets    71  9   MyProject.Core.Modules

NuGet.targets 报告行

<SetEnvironmentVariable EnvKey="VisualStudioVersion"
EnvValue="$(VisualStudioVersion)" Condition=" '$(VisualStudioVersion)'
!= '' AND '$(OS)' == 'Windows_NT' " />

在我看来,由于某种原因 VS 2012 无法解析路径或程序集,所以我不确定是否应该修复 NuGet.targets 中的某些内容,或者它是 Visual Studio 的东西,有什么想法吗?

谢谢

最佳答案

我解决了更改 .csproj 文件中的 ToolsVersion 问题。

来自

<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

关于Visual Studio 2012 中的 .NET 4.5.1 预览支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17609184/

相关文章:

c# - 如何在不显式转换的情况下在内部调用显式接口(interface)实现方法?

.net - 在WPF中使用自定义字体

c# - 匿名类型可以继承自另一种类型吗?

c++ - 与 C 字符串 `std::string` + (`malloc` 相比, `memcpy` 的性能真的很差)

c# - NuGet 包引用复制 dll 本地

visual-studio-2013 - 找不到 localdb nuget 包

.net - 我可以在 .Net 3.5 项目中使用任务并行库吗?

c# - 可移植类库中的 System.Tuple 在哪里?

visual-studio-2010 - VS2010 : How to prevent changing a Horizontal Tab Group to a Vertical Tab Group when restarting?

docker - Gitlab CI docker环境下无法恢复mono项目的nuget包