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


当前回答

遵循这个完整的解决方案一步一步。这在VS 2017中很适用。

Open Command prompt in administrator mode Open File explorer and got to .NET Framework folder Eg:C:\Windows\Microsoft.NET\Framework\v4.0.30319 v4.0.30319 this is my .NET folder. you want to select your relevant folder. in CMD - Go to .NET folder path cd C:\Windows\Microsoft.NET\Framework\v4.0.30319 Execute below command in CMD aspnet_regiis.exe -i You can see this message finally - Finished installing ASP.NET (4.0.30319.0) iisreset You can see this message finally - Internet services successfully restarted Open IIS in your computer (if not config Follow this) Go to Site and right click Add WebSite Fill - Site name and select physical path Then type port number (you can find port number in .csproj file and port number must equal with (IISUrl) EG : <IISUrl>http://localhost:15724/</IISUrl> my port is 15724 Note : you cannot create port 80 number. because it used default IIS page Click Ok Open visual studio with administrator permission Then right click and reload your project

你的问题可能会解决。

其他回答

原来我的IIS在localhost:8181上工作。必须配置{Project}。csproj文件。

    <ProjectExtensions>
    <VisualStudio>
      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
        <WebProjectProperties>
          <UseIIS>True</UseIIS>
          <AutoAssignPort>True</AutoAssignPort>
          <DevelopmentServerPort>7386</DevelopmentServerPort>
          <DevelopmentServerVPath>/</DevelopmentServerVPath>
          <IISUrl>**http://localhost:8181/ProjectName**</IISUrl>
          <NTLMAuthentication>False</NTLMAuthentication>
          <UseCustomServer>False</UseCustomServer>
          <CustomServerUrl>
          </CustomServerUrl>
          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile><EnableWcfTestClientForSVCDefaultValue>True</EnableWcfTestClientForSVCDefaultValue>
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>

原因:项目内部的IISURL。Csproj没有正确地反映在项目设置中,并且没有创建虚拟目录。

解决方案:将项目URL更改为正确的PORT,并创建虚拟目录以使缺少的PORT可用。


遵循以下步骤:

步骤1:右键单击项目文件编辑项目。csproj文件。

第二步:搜索IIS,从<UseIIS>True</UseIIS>修改为<UseIIS>False</UseIIS>

步骤3:右键单击项目重新加载项目。重新加载成功后,右键单击项目并选择属性。

步骤4:在Properties => Web下找到项目URL选项

步骤5:将项目URL更改为错误消息和<IISURL>http://localhost:8086 </IISURL>中的IISURL。csproj文件。然后单击“创建虚拟目录”。保存所有

步骤6:重做步骤2,这样就不会影响远程代码库和服务器部署设置。

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

对于DNN用户,我的问题是我需要为dnndev绑定。我在80号港口。我有多个运行在不同端口上的安装,VS要求特定的Url存在于端口80(不像我的是86)。

当这种情况发生时,最简单的解决方案是手动创建虚拟目录。

首先,您需要确保拥有正确的ASP版本。Net安装,并且您已经安装了IIS扩展。

要做到这一点,请转到C:\(Windows)\Microsoft.NET\Framework\(dotnetver)\的相关.net版本的文件夹 (将括号中的文件夹替换为PC上正确的文件夹)并运行此命令

aspnet_regiis.exe -i

接下来,一旦运行和完成,有时运行

iisreset

从命令行可以帮助,有时您不需要这样做。

接下来,进入IIS管理器,找到本地主机网站并选择添加文件夹。 浏览到项目中包含实际ASP. exe的文件夹。Net项目并添加它。

最后,右键单击你添加的文件夹,你应该有一个选项,说“转换为应用程序”或“创建虚拟目录”或类似的东西。

!!确保虚拟目录名称为“MyWebApp”!!

重新加载解决方案,它应该可以工作。

请小心;这不是一个编程问题(也不应该在这里发布),但我发布了这个指导,因为这是一个常见的问题,但我发布的建议是通用的;我列出的命令是正确的,但是你需要在IIS中执行的步骤可能会有所不同,这取决于你的版本和你的帐户权限。

好运!