日期:2014-05-17  浏览次数:20414 次

为什么ASP.NET访问 IIS 元数据库失败
访问 IIS 元数据库失败。 

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.Web.Hosting.HostingEnvironmentException: 访问 IIS 元数据库失败。 

用于运行 ASP.NET 的进程帐户必须具有对 IIS 元数据库(如 IIS://servername/W3SVC)的读访问权。有关如何修改元数据库权限的信息,请参见 http://support.microsoft.com/?kbid=267904。

源错误: 

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  

堆栈跟踪: 


[HostingEnvironmentException: 访问 IIS 元数据库失败。]
  System.Web.Configuration.MetabaseServerConfig.MapPathCaching(String siteID, VirtualPath path) +637
  System.Web.Configuration.MetabaseServerConfig.System.Web.Configuration.IConfigMapPath2.MapPath(String siteID, VirtualPath vpath) +9
  System.Web.Hosting.HostingEnvironment.MapPathActual(VirtualPath virtualPath, Boolean permitNull) +174
  System.Web.Hosting.HostingEnvironment.MapPathInternal(VirtualPath virtualPath, Boolean permitNull) +51
  System.Web.CachedPathData.GetConfigPathData(String configPath) +341
  System.Web.CachedPathData.GetConfigPathData(String configPath) +234
  System.Web.CachedPathData.GetApplicationPathData() +38
  System.Web.CachedPathData.GetVirtualPathData(VirtualPath virtualPath, Boolean permitPathsOutsideApp) +8802175
  System.Web.Configuration.RuntimeConfig.GetLKGRuntimeConfig(VirtualPath path) +117




请勿回答如 执行 
C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i 

这类方法试过,无效。

安装的是iis5.1+xp。

网站在vs中调试,成功。但是在iis中就失败

------解决方案--------------------
解决办法:
1 开始->程序->Microsoft .NET Framework SDK v2.0->SDK 命令提示

2 输入 aspnet_regiis.exe -i
3 关闭VS2005,打开C:\WINDOWS\Microsoft.NET\work\v2.0.50727\Temporary ASP.NET Files 删除刚才调试的目录
4 重起IIS,问题解决。

------解决方案--------------------
探讨

解决办法:
1 开始->程序->Microsoft .NET Framework SDK v2.0->SDK 命令提示

2 输入 aspnet_regiis.exe -i
3 关闭VS2005,打开C:\WINDOWS\Microsoft.NET\work\v2.0.50727\Temporary ASP.NET Files 删除刚才调试的目录
4 重起IIS,问题解决。

……