VB.NET菜单无法找到带斜杠的项目

时间:2014-07-30 16:45:49

标签: asp.net asp.net-mvc vb.net

我是ASP.NET的新手,我被要求更改菜单中一个条目的标签。一个非常简单的任务。问题是新值包含斜杠" /" ,现在这样的句子:

MyMenu.FindItem("XXX/YYY")

无法找到菜单元素。

当没有斜线时,代码正常工作;例如,当我用短划线替换斜线时。不幸的是,我必须使用斜杠。

编辑:

MyMenu System.Web.UI.WebControls.Menu

站点地图文件包含此行

<siteMapNode url="SomePage.aspx" title="XXX/YYY" description="Some Description" />

原始标签完全不同。如果出于测试目的,我将&#34; XXX / YYY&#34; 替换为&#34; XXX-YYY&#34; &# 34; XXX YYY&#34; 它正常工作。

1 个答案:

答案 0 :(得分:1)

/是WebControls.Menu对象的默认pathseparatorFindItem按完整路径匹配菜单项,因此当您在菜单项的名称中放置/时,它认为它需要遍历路径。它在名为“XXX”的菜单项下找不到名为“YYY”的菜单项,因此找不到任何内容。

尝试将pathseparator属性设置为菜单项中未使用的属性,例如逗号,或管道|

MSDN Menu.PathSeparator