安装Visual Studio 2012并打开解决方案后,我收到一系列错误,格式如下:

Web应用程序项目Foo配置为使用IIS。无法访问IIS元数据库。您没有足够的权限访问计算机上的IIS网站。

我为我们的每个web应用程序都得到了这个。


我尝试过的事情:

以管理员身份运行Visual Studio运行aspnet_regiis.exe-ga MyUserName运行aspnet_regiis.exe-i

这些似乎是解决这个问题的常见方法,但我没有成功。

还有什么我可以尝试做的吗?


当前回答

除了@nologo的回答,我还必须使用IIS。所以我改变了

<UseIIS>True</UseIIS>

首先设置为“False”。

打开解决方案并确保可以加载项目。关闭解决方案和Visual Studio实例再次将值更改为“True”打开解决方案。这次,我没有收到任何错误/警告。当我的项目被映射到IIS网站时,我也可以使用Ctrl+F5或F5运行而没有任何问题。

其他回答

为了解决这个问题,我对Visual Studio 2015进行了修复。修复花费了很长时间,但它解决了问题,而上述大部分工作都没有解决。我在经营Win 7企业。

在我的消息中,除了抱怨“无法访问IIS元数据库”之外,还提到了无法访问“<IISUrl>http://localhost:6416/</IISUrl>“。右键单击卸载项目,单击“编辑”,找到行“<IISUrl”http://localhost:6416/</IISUrl>“,将其注释掉。重新加载,它应该可以工作。这与管理员没有访问该地址的权限有关。

谢谢所有回答的人。由于关闭了很长一段时间,我无法提供太多反馈,但我最终解决了我的问题。我尝试了许多其他解决方案,但它们没有解决我的问题,但我确信,当根本原因不同时,它们会有所帮助。

我的解决方案

我通过关闭Windows 7中的IIS和.Net Framework功能,然后重新打开这些功能,解决了这个问题。似乎是重新安装解决了我的问题。我仍然不知道是什么导致了这个问题,但至少我团队中的其他一名开发人员也有同样的问题。

我今天遇到了这个问题,并通过从Project文件中删除IISUrl解决了这个问题:

右键单击项目单击“编辑”删除以下行:<IISUrl>http://localhost:xxxxx</IISUrl>重新加载项目现在,通过右键单击“项目”>“财产”>“Web”并选择“使用本地IIS Web服务器”(取消选中“使用IIS Express”),然后单击“创建虚拟目录”按钮,添加一个新的IIS虚拟目录。

创建一个新的网站,在出现错误后,转到您创建项目的文件夹,在txt应用程序中打开.csproj文件,找到此标记“<UseIIS>”并将“false”更改为“true”,在下面的行中找到标记“<IISUrl>”,然后放入iis url(在iis中查找url),您的标记必须如下所示:

<WebProjectProperties>
      <UseIIS>True</UseIIS>
      <AutoAssignPort>True</AutoAssignPort>
      <DevelopmentServerPort>0</DevelopmentServerPort>
      <DevelopmentServerVPath>/</DevelopmentServerVPath>
      <IISUrl>http://localhost/yourIISAppAlias
      </IISUrl>
      <NTLMAuthentication>False</NTLMAuthentication>
      <UseCustomServer>False</UseCustomServer>
      <CustomServerUrl>
      </CustomServerUrl>
      <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
    </WebProjectProperties>