【问题标题】:How can I get my web.sitemap file to work?如何让我的 web.sitemap 文件正常工作?
【发布时间】:2013-01-28 04:40:08
【问题描述】:

大家好。我有一个与我的作业代码相关的问题。我正在尝试配置我的 web.sitemap 文件,但是当我运行我的代码时得到以下信息:

在元素内直接需要一个元素。

说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.Configuration.ConfigurationErrorsException:元素内部只需要一个元素。

url="CustomerSupport" 的 siteMapNode 出现错误,它说: 命名空间 'http://schemas.microsoft.com/AspNet/SiteMap-File-1.0' 中的元素 'siteMap' 在命名空间中有无效的子元素 'siteMapNode' 我已经坚持了一段时间。我真的很感激一些帮助。这是 we.sitemap 文件的代码:

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
  <siteMapNode url="Default.aspx" title="Home"  description="">
  </siteMapNode>

      <siteMapNode url="Customer support.aspx" title="Customer support"  description="">
          <siteMapNode url="ProductRegistration.aspx" title="Register products"  description="">
          </siteMapNode>
          <siteMapNode url="CustomerSurvey.aspx" title="Complete customer survey"  description="">
          </siteMapNode>
          <siteMapNode url="ContactUs.aspx" title="Contact us"  description="">
          </siteMapNode>
      </siteMapNode>

      <siteMapNode url="TechnicianSupport.aspx" title="Technician support"  description="">
          <siteMapNode url="CustomerIncidentDisplay.aspx" title="Display customer incidents"  description="">
          </siteMapNode>
          <siteMapNode url="IncidentUpdate.aspx" title="Update incidents"  description="">
          </siteMapNode>
      </siteMapNode>

      <siteMapNode url="Administration.aspx" title="Administration"  description="">
          <siteMapNode url="ProductMaintenance.aspx" title="Maintain products"  description="">
          </siteMapNode>
          <siteMapNode url="CustomerMaintenance.aspx" title="Maintain customers"  description="">
          </siteMapNode>
          <siteMapNode url="TechnicianMaintenance.aspx" title="Maintain technicians"  description="">
          </siteMapNode>
          <siteMapNode url="IncidentCreation.aspx" title="Create incidents"  description="">
          </siteMapNode>
          <siteMapNode url="TechnicianIncidentSummary.aspx" title="Display techninican incidents"  description="">
          </siteMapNode>
          <siteMapNode url="IncidentAssignment.aspx" title="Assign incidents"  description="">
          </siteMapNode>
          <siteMapNode url="IncidentDisplay.aspx" title="Display incidents"  description="">
          </siteMapNode>
          <siteMapNode url="CustomerDisplay.aspx" title="Display customers"  description="">
          </siteMapNode>
      </siteMapNode>

      <siteMapNode url="Map.aspx" title="Site Map"  description="">
        </siteMapNode>
</siteMap>

【问题讨论】:

  • 文件名中是否有空格 Customer support.aspx
  • 您可能希望将所有节点放在第一个 (default.aspx) 节点内。
  • MikeSmithDev - 谢谢。我在第一个节点中输入了所有节点并且它起作用了。 RVG - 这是一个我什至不知道存在的额外错误。感谢您指出这一点。

标签: asp.net


【解决方案1】:

您有许多节点,而您应该只有一个: 在主节点内,将其余部分放入。

<siteMapNode name="this is the main node">

  <siteMapNode name="1">
    <siteMapNode name="11">
    </siteMapNode>

    <siteMapNode name="12">
    </siteMapNode>
  </siteMapNode>

  <siteMapNode name="2">
  </siteMapNode>

  <siteMapNode name="3">
  </siteMapNode>
</siteMapNode>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-12
    • 1970-01-01
    • 2016-01-02
    • 2018-12-30
    • 2015-05-08
    • 2020-08-27
    相关资源
    最近更新 更多