xmlsitemapprovider несколько узлов с одинаковым URL
Google это вокруг, но не может получить ответ.
<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".
Я попробовал 2 способа, чтобы решить это, но никогда не достиг. У меня есть зашифрованная строка запроса.
Добавление "#". Когда я добавляю "#", как это "~/Forms/HSU.aspx#? Eq=123456789", не работает, потому что эквалайзер равен нулю. Когда я добавляю "#", как это "~/Forms/HSU.aspx? Eq=123456789#", это не работает, потому что элемент управления SiteMap всегда находит первый HUS.aspx в качестве текущего узла, а его родительский узел будет BV1Menu.aspx.
Добавление фиктивной строки запроса. Не работает, такая же ситуация, как 2-й выше.
Я знаю, что есть решение для перезаписи URL, но моя строка запроса зашифрована, и нет способа переписать URL.
Пожалуйста помоги.
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"/>