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

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

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


我尝试过的事情:

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

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

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


当前回答

转到项目的根目录,找到以下文件:YourProjectName.csproject.user-在其中,确保UseIISExpress设置为false:

<UseIISExpress>false</UseIISExpress>

如果仅此项不起作用,请尝试以下操作,然后重试:

YourProjectName.csproj-在主项目文件中,确保UseIIS和UseIISExpress都设置为false:

<UseIIS>True</UseIIS>
<UseIISExpress>false</UseIISExpress>

更改这些后,我能够再次加载项目。

注意:确保您以管理员身份运行VS,如其他答案中所述。

其他回答

如果您具有管理员权限,请右键单击Visual Studio图标>财产,然后选择“以管理员身份运行”复选框。您可以直接以管理员身份运行visaul studio。这种方式,正式而基本。

我有两种不同类型的问题导致了这个错误,我想我应该分享。。。

1. The directory was on an network share and due to UAC restrictions, was 
   unable to be accessed -- even when running as an admin.
2. The directory was on a drive that didn't exist...

这两种情况都源于MS选择将内容放在Documents或My Document目录中的不幸(imo)选择,并伴有非常糟糕的错误消息。在上述两种情况下,根本问题是IISExpress Config文件位于My Documents中,它要么不存在,要么无法访问。

在从这个链接添加功能之后,我也遇到了同样的问题。后来我关注了这篇文章,问题消失了。

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

我也有同样的问题。对我来说,我使用的文档与以前的Windows安装相同。只需从我的文档中删除IISExpress文件夹就可以了。