对于我的计算机上缺少的nuget包Microsoft.Net.Compilers.2.6.1,我该怎么办,我的项目将无法部署,这是WebDeploy

问题描述

我很沮丧,我有一个MVC项目4.5,这是一个非常简单的项目。我可以在本地构建它,也可以发布它,但是当我尝试执行MSBuild时,会出现以下错误:

enter image description here

我检查了我的Nuget已安装节点,但尚未安装(此时我必须已将其卸载),但是安装它时出现了错误。无论如何,我都会再次安装它,检查我的未完成更改并进行重建:

现在我得到了一个不同但相似的错误:

enter image description here

现在,我已检查软件包已安装在我的NuGet中,并且已安装。 我的package.config显示以下内容:

 <package id="Microsoft.Net.Compilers" version="2.6.1" targetFramework="net45" developmentDependency="true" />

我检查了“ Microsoft.Net.Compilers.2.6.1 \ tools”文件夹。

我的.csproj文件具有以下内容:

 <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
    <PropertyGroup>
      <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information,see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
    </PropertyGroup>
    <!--  <Error Condition="!Exists('packages\Microsoft.Net.Compilers.Toolset.3.7.0\build\Microsoft.Net.Compilers.Toolset.props')" Text="$([System.String]::Format('$(ErrorText)','packages\Microsoft.Net.Compilers.Toolset.3.7.0\build\Microsoft.Net.Compilers.Toolset.props'))" /> -->
    <!--  <Error Condition="!Exists('packages\Microsoft.Net.Compilers.2.6.1\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)','packages\Microsoft.Net.Compilers.2.6.1\build\Microsoft.Net.Compilers.props'))" /> -->
    <!--  <Error Condition="!Exists('packages\Microsoft.Net.Compilers.2.6.1\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)','packages\Microsoft.Net.Compilers.2.6.1\build\Microsoft.Net.Compilers.props'))" /> -->
    <Error Condition="!Exists('packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.3.6.0\build\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.targets')" Text="$([System.String]::Format('$(ErrorText)','packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.3.6.0\build\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.targets'))" />
    <Error Condition="!Exists('packages\Microsoft.Net.Compilers.2.6.1\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)','packages\Microsoft.Net.Compilers.2.6.1\build\Microsoft.Net.Compilers.props'))" />
    <!--   <Error Condition="!Exists('packages\Microsoft.Net.Compilers.2.7.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)','packages\Microsoft.Net.Compilers.2.7.0\build\Microsoft.Net.Compilers.props'))" /> -->
    <!--   <Error Condition="!Exists('packages\Microsoft.Net.Compilers.3.7.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)','packages\Microsoft.Net.Compilers.3.7.0\build\Microsoft.Net.Compilers.props'))" /> -->
  </Target>
  <Import Project="packag

我试图删除.csproj的选择,但没有任何区别。我只是不明白。

任何帮助都将受到欢迎。

解决方法

因此,此问题已解决。事实证明,Microsoft.Net.Compiler.2.6.1要求您的项目在.NET 4.7.2下运行,我们的环境和解决方案当前都在.NET 4.5上。在VS2017中创建解决方案时,会自动安装此NuGet软件包。希望这对可能遇到此问题的其他人有所帮助。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...