我已检查过去与早期vs .net版本发生了同样的错误,但我在VS 2017中尝试从VS Community 15.3.5升级到15.4时遇到此问题。
然后我尝试使用" vs_community.exe --layout" C:\ MyFolder"下载整个设置。 --lang en-US"这又花了9个多小时才完成下载。重新选择修复设置,再次出现同样的问题。
是否有人知道解决上述问题的更快方法?
答案 0 :(得分:15)
我有类似的问题,它通过更改csproj文件来解决:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
更改为
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v15.0\WebApplications\Microsoft.WebApplication.targets" Condition="true" />
答案 1 :(得分:1)
只需安装VS2017的ASP.Net Web部署组件,它就对我有用。
答案 2 :(得分:0)
我想知道哪些包正在改变这些路径?
我的如下:
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildProgramFiles32)\MSBuild\Microsoft\VisualStudio\v14.0</VSToolsPath>
更改为
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
答案 3 :(得分:0)
我将项目从以前的版本升级到VS 2017之后,发生了类似的问题。我必须在csproj文件中进行以下更改。
<PropertyGroup> <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion> <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) </VSToolsPath> </PropertyGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" /> <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
然后我就可以发布项目了。
答案 4 :(得分:0)
我遇到了同样的问题,我通过安装程序将Visual Studio 2017更新为较新的版本。 安装程序从未成功完成。它以一些错误结束,而我只是忽略了很多错误,因此没有安装很多组件,这些组件仅次于有错误的组件。解决了错误组件之后,其余安装终于成功完成,并且可以毫无问题地再次发布。
我认为以前未安装的某些组件是较旧的版本,与新更新不兼容。
尝试完全安装/更新Visual Studio,没有错误。
答案 5 :(得分:0)
我遇到了同样的问题(Visual Studio 2017)。 安装-“ MSBuild.Microsoft.VisualStudio.Web.targets” nuget包到Visual Studio。然后尝试发布。