0

我已经按照本教程中的描述实现了 SiteMap Security Trimming:ASP.NET Menu and SiteMap Security Trimming

菜单按预期工作。我想更进一步,将用户重定向到生成的修剪菜单中的第一个节点。每个用户的菜单会根据他们的角色而有所不同,因此重定向 URL 需要从菜单本身或站点地图文件中派生。

关于如何做到这一点的任何建议?

4

1 回答 1

0

我似乎已经找到了一个选项,至少:我为 MenuItemDataBound 创建了一个事件处理程序,并根据绑定到菜单的第一个项目的 Url 进行重定向,如下所示:

在 aspx 上,设置菜单的OnMenuItemDataBound="Menu1_MenuItemDataBound"

然后在代码隐藏中创建以下方法:

protected void Menu1_MenuItemDataBound(object sender, MenuEventArgs e)
{
    string Url = ((SiteMapNode)e.Item.DataItem).Url;
    Response.Redirect(Url);
}

似乎按预期工作。如果您有更好的解决方案,请告诉我。

于 2013-07-18T17:40:48.417 回答