ASP.NET无法访问IIS元数据库

时间:2009-07-31 08:43:57

标签: asp.net iis configuration

如何解决这个问题?

我正在使用asp.net 2.0,vs2005和IIS 5.1。

使用Windows XP SP3。

Failed to access IIS metabase.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Web.Hosting.HostingEnvironmentException: Failed to access IIS metabase.

The process account used to run ASP.NET must have read access to the IIS metabase (e.g. IIS://servername/W3SVC). For information on modifying metabase permissions, please see http://support.microsoft.com/?kbid=267904.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[HostingEnvironmentException: Failed to access IIS metabase.]
   System.Web.Configuration.MetabaseServerConfig.MapPathCaching(String siteID, VirtualPath path) +3591442
   System.Web.Configuration.MetabaseServerConfig.System.Web.Configuration.IConfigMapPath2.MapPath(String siteID, VirtualPath vpath) +9
   System.Web.Hosting.HostingEnvironment.MapPathActual(VirtualPath virtualPath, Boolean permitNull) +169
   System.Web.CachedPathData.GetConfigPathData(String configPath) +389
   System.Web.CachedPathData.GetConfigPathData(String configPath) +243
   System.Web.CachedPathData.GetApplicationPathData() +68
   System.Web.CachedPathData.GetVirtualPathData(VirtualPath virtualPath, Boolean permitPathsOutsideApp) +3536567
   System.Web.Configuration.RuntimeConfig.GetLKGRuntimeConfig(VirtualPath path) +189

4 个答案:

答案 0 :(得分:26)

尚未正确设置ASPNET用户的权限。

您运行的是哪个版本的ASP.NET?

Start -> Run 
Type cmd <HIT RETURN>
Type c:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis -i <HIT RETURN>

或建议

aspnet_regiis.exe -ga ASPNET

答案 1 :(得分:13)

使用-i选项运行asnet_regi可能是不够的,原因可能是缺少对ASPNET帐户的正确IIS元数据库访问权限。

我建议使用-ga选项运行它:

aspnet_regiis.exe -ga ASPNET

作为一般性评论,如果在安装IIS之前安装Visual Studio和/或.Net Framework,则会出现此问题。

答案 2 :(得分:3)

尝试从dotnet目录运行aspnet_regiis -i。它有办法解决问题。

答案 3 :(得分:0)

只需从cmd

运行以下内容即可

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i