我在breadcrumbs中使用mvcsitemapprovider。在网站的某些部分,我想仅在参数满足特定条件时才显示子节点。所有节点都已在Mvc.sitemap中定义。我只是想隐藏它们,直到URL参数满足要求。
我想知道DynamicNodeProvider是否是我唯一的选择。我不能在运行时显示/隐藏几个节点吗?
请帮忙。
答案 0 :(得分:0)
有两个选项:
对于第二个选项,我建议将MvcSiteMapProvider_VisibilityAffectsDescendants设置为false,这样您的节点就可以切换可见性而不受其祖先节点的影响。
IDynamicNodeProvider不是获取此类行为的选项。动态节点是从动态数据源潜在加载的节点,但它们仍然在应用程序启动时加载到共享缓存中。它们不是按请求加载的。但是,您可以将以上两个选项与IDynamicNodeProvider一起使用。