今天打開一個好久沒打開過的老項目,發現web加載失敗,如圖:
然后重新加載項目,提示:
一開始直接在網上找答案,結果看的答案都不靠譜,只好自己動手了,
先看了
這里面是基礎配置:大概看過后,又去看了提示里說的文件,
大概看了,下發現兩個文件有關聯,
發現web路徑不對了,然后調成對應的路徑,再去項目里重新加載就好了。
接着開發了。
最近整理項目,又一情況出現,vs08(2.0)的項目升級到vs13(4.0)環境下,遇到如下情況:
這次網上給了答案:
http://www.cnblogs.com/lyuec/p/3576807.html
記事本打開項目Web.csproj 將
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
替換成
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="'$(Solutions.VSVersion)' == '8.0'" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" Condition="'$(Solutions.VSVersion)' == '9.0'" />
重新加載項目即可。
在此重點說下,其實是把對應的版本對上了,然后加上后面的 Condition="'$(Solutions.VSVersion)' == '8.0'" ,因為我的項目里是
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" />
所以要改成:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" Condition="'$(Solutions.VSVersion)' == '11.0'"/>
然后加載,又遇到了先前遇到的問題,但略有不同,這次改的端口號:
端口也對應上,再加載就好了。
最后出現的問題:由於是老項目,可能在VS2005或VS2008下開發的,現在在VS2013下打開,環境會自動給你升級代碼。
但是升級完后,出現以下問題:項目加載完后要手動配置4.0
網上說去屬性里配置什么的,去配置了,不太好使,因為屬性里面已經是4.0了,然后找答案,其實還是在applicationhost.config里。
applicationPool:應用程序池。
CLR2/VS2005, CLR3.5/VS2008和CLR4/VS2010
然后把原來配置的 <application path="/" applicationPool="Clr2IntegratedAppPool">改為<application path="/" applicationPool="Clr4IntegratedAppPool">
再打開項目就好了。