ASP.NET SiteMap - 有没有办法以编程方式查看它是否包含一个页面而不是单独遍历每个节点

AJM*_*AJM 5 asp.net

想要检查我的站点地图是否包含页面.

可以只迭代SiteMap.RootNode.GetAllNodes(),但有没有办法搜索页面而无需手动迭代?

Enr*_*lio 4

如果您使用的是 .NET Framework 3.5,则可以使用 LINQ 方法:

SiteMapNodeCollection pages = SiteMap.RootNode.GetAllNodes();
SiteMapNode myPage = pages.SingleOrDefault(page => page.Url == "somePageUrl");
Run Code Online (Sandbox Code Playgroud)