当我打开解决方案时,我的解决方案文件中有一个“不可用”的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版


当前回答

我通过从下面的链接下载后重新安装IIS Express来解决这个问题:

https://www.microsoft.com/en-us/download/confirmation.aspx?id=48264

其他回答

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

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

尝试使用管理员权限打开Visual Studio。在我的例子中,它提供了对IIS站点的访问,并使这个错误消失了。然后,我可以将项目切换到使用IIS Express,这似乎不需要管理员特权。

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

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

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

iisreset

在我的例子中,这个问题是由损坏的IIS绑定引起的。具体来说,我的“http”绑定已被删除。重新创建它解决了这个问题。