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

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

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


我尝试过的事情:

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

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

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


当前回答

在Visual Studio 2015中:我将.csproj文件中的UseIIS更改为false,这对我有用。

<UseIIS>False</UseIIS>

其他回答

我今天刚遇到这个问题,我发现我没有以“以管理员身份运行”的身份打开VS。这样做之后,我就可以发布服务了。

我通过向%systemroot%\inetsrv\config授予IIS AppPool标识权限解决了此问题

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

<UseIIS>True</UseIIS>

首先设置为“False”。

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

我认为我们在工作中遇到了类似的问题。对我们来说,解决方案是进入“控制面板”->“程序和功能”->“打开或关闭Windows功能”…在这里面,我们必须选择“Internet信息服务”->“Web管理工具”->“IIS 6管理兼容性”->IIS元数据库和IIS 6配置兼容性”。

试试看,如果有帮助,请告诉我!

注意:我们在Windows 7上运行IIS 7.5,同时使用Visual Studio 2005和2010,并使用超老式的Web服务(.asmx)。。。

导航到文件夹:%systemroot%\System32\inetsrv\config会显示一个安全对话框。单击“继续”,这可能会解决问题。这已在两台独立的Win 10/VS 2017/IIS机器上运行。