C# 重定向到安全菜单节点

C# 重定向到安全菜单节点,c#,asp.net,webforms,asp.net-4.0,C#,Asp.net,Webforms,Asp.net 4.0,我已经实现了本教程中所述的站点地图安全性微调: 菜单按预期运行。我想更进一步,将用户重定向到结果修剪菜单中的第一个节点。根据每个用户的角色,菜单会有所不同,因此重定向URL需要从菜单本身或站点地图文件派生 关于如何实现这一点有什么建议吗?我似乎至少想出了一个选项:我为MenuItemDataBound创建了一个事件处理程序,并根据绑定到菜单的第一个项目的Url重定向,如下所示: 在aspx上,设置菜单的OnMenuItemDataBound=“Menu1\u MenuItemDataBound”

我已经实现了本教程中所述的站点地图安全性微调:

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


关于如何实现这一点有什么建议吗?

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

在aspx上,设置菜单的
OnMenuItemDataBound=“Menu1\u MenuItemDataBound”

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

protected void Menu1_MenuItemDataBound(object sender, MenuEventArgs e)
{
    string Url = ((SiteMapNode)e.Item.DataItem).Url;
    Response.Redirect(Url);
}
似乎工作如预期。如果你有更好的解决方案,请告诉我