当我打开解决方案时,我的解决方案文件中有一个“不可用”的web项目。当我右键单击web项目并重新加载项目时,我得到以下错误:

Web应用程序项目mycompany.myapp.mywebproject已配置为使用IIS。无法找到Web服务器http://localhost/MyWebApp。

我还没有为这个web应用程序手动设置虚拟目录。

每个同事,Visual Studio应该提示我创建虚拟目录,但我没有得到提示。

在我的开发机器上安装IIS之前,我安装了VS2010。

这是我的开发机器设置:

Windows 7企业版 服务包1 64位操作系统 Visual Studio 2010企业服务包 IIS 7.5版


当前回答

在我的情况下,我想从http切换到https,所以我已经从IIS删除了http。在我的。csproj。用户文件发现我仍然有:

<IISUrl>http://localhost/</IISUrl>

所以我把它改成:

<IISUrl>https://localhost/</IISUrl>

其他回答

编辑.csproj或vbproj文件。找到并替换这些条目

<UseIIS>true</UseIIS> by <UseIIS>false</UseIIS>
<UseIISExpress>true</UseIISExpress> by <UseIISExpress>false</UseIISExpress>

在我的例子中,csproj文件中引用的url是不正确的。

它需要以www作为前缀。

我做了更改,保存文件和项目加载良好。

在我的情况下,我能够在离线模式下打开解决方案,只需运行命令:

iisreset

打开项目文件夹,删除{project}.csproj。用户,然后在Visual Studio上重新加载项目。

我也犯了这个错误。我以为一切设置都是正确的,但我发现有一件事是缺失的:我用于项目的主机名(还)无法解析。

由于我的应用程序从主机名确定当前客户端的名称,我使用了一个主机名,如clientname.mysuperapp.local进行开发。当我将开发主机名添加到hosts文件时,该项目又可以加载了。显然,我必须这样做,但我没有想到VS在加载项目之前检查主机名。