<siteMapNode url="~/BV1Menu.aspx" title="Baseline Visit 1 Menu" description="Baseline Visit 1 Menu">
<siteMapNode url="~/Forms/RAND.aspx" title="RAND" description="RAND BV1" />
<siteMapNode url="~/Forms/PDQ.aspx" title="PDQ 39" description="PDQ 39" />
<siteMapNode url="~/Forms/HSU.aspx" title="Health Status Update" description="Health Status Update" />
</siteMapNode>
<siteMapNode url="~/MonthlyMenu.aspx" title="Monthly Menu" description="Monthly Menu">
<siteMapNode url="~/Forms/HSU.aspx" title="Health Status Update 1" description="Health Status Update" />
</siteMapNode>
正如你所看到的,我在这里有2个“〜/ Forms / HSU.aspx”,所以它给了我一个例外,说“具有相同URL的多个节点”。
我尝试了两种方法来解决它但从未实现过。我有一个加密的查询字符串。
添加“#”。 当我添加“#”这样的“〜/ Forms / HSU.aspx#?eq = 123456789”时,因为eq为null而无效。 当我添加“#”这样的“〜/ Forms / HSU.aspx?eq = 123456789#”时,因为SiteMap Control总是找到第一个HUS.aspx作为当前节点,它的父节点将是BV1Menu.aspx。
添加虚拟查询字符串。 不工作,与上面的第二个相同。
我知道有一个URL重写解决方案,但我的查询字符串已加密,无法重写URL。
请帮忙。
答案 0 :(得分:1)
以下是我正在处理的项目示例,它对我来说很好用:
<siteMapNode url="~/ExperimentsView.aspx?path=htt" title="HTT" />
<siteMapNode url="~/ExperimentsView.aspx?path=mtt" title="MTT"/>
<siteMapNode url="~/ExperimentsView.aspx?path=HPLC" title="HPLC"/>
<siteMapNode url="~/ExperimentsView.aspx?path=UVSpec" title="UV-Spec"/>