首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到web.sitemap,但它存在

找不到web.sitemap,但它存在
EN

Stack Overflow用户
提问于 2011-04-08 01:28:35
回答 4查看 7K关注 0票数 4

我有一个ASP.net站点,并在根目录中创建了一个web.sitemap文件。它包含:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode>
    <siteMapNode url="~/Default.aspx" title="Home" description="Rado Home" />
    <siteMapNode url="" title="Structural" description="">
      <siteMapNode url="" title="Doors" description=""/>
      <siteMapNode url="" title="Staircases" description=""/>
      <siteMapNode url="" title="Post Boxes" description=""/>
    </siteMapNode>

    <siteMapNode url="" title="Functional">
      <siteMapNode url="" title="Tables" />
      <siteMapNode url="" title="Features" />
    </siteMapNode>
    <siteMapNode url="" title="Sculpture">
      <siteMapNode url="" title="Wall" />
      <siteMapNode url="" title="Free Standing" />
    </siteMapNode>
    <siteMapNode url="" title="Smithing">
      <siteMapNode url="" title="Gold" />
      <siteMapNode url="" title="Silver" />
      <siteMapNode url="" title="Copper" />
    </siteMapNode>
    <siteMapNode url="~/About.aspx" title="About"/>
    <siteMapNode url="~/Contact.aspx" title="Contact"/>
  </siteMapNode>
 </siteMap>

然后我在我的母版页中创建了一个菜单,如下所示:

代码语言:javascript
复制
<asp:SiteMapDataSource ID="SiteMapDataSource1" Runat="server" />
            <asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" Orientation="Horizontal" DataSourceID="SiteMapDataSource1" />

当我运行该站点时,我得到以下错误: XmlSiteMapProvider所需的文件web.sitemap不存在。

有什么想法可能是错误的吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-04-08 04:46:37

我修好了。显然,在web.sitemap文件上没有足够的权限,所以运行站点的任何用户都不能读取该文件。关于这一点,有没有人知道我如何才能找出哪个用户访问该站点的文件?

票数 0
EN

Stack Overflow用户

发布于 2011-04-08 04:46:32

你的web.config包含站点地图部分吗?

代码语言:javascript
复制
<siteMap>
  <providers>
    <add name="SiteMapDataSource1" description="Default SiteMap provider." type="System.Web.XmlSiteMapProvider" siteMapFile="/MyApplication/Web.sitemap" />
    <add name="AdminSiteMap" description="Default SiteMap provider." type="System.Web.XmlSiteMapProvider" siteMapFile="/MyApplication/Admin.sitemap"  />
  </providers>
</siteMap>

是像这样吗?

票数 2
EN

Stack Overflow用户

发布于 2011-04-08 01:54:55

你有没有把你创建的网站地图叫做web.sitemap?

如果不是,那么您需要清除sitemap标记中的提供者&添加一个包含您的站点地图名称的新提供者。

This显示根web.config中需要清除的缺省条目

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5585113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档