【问题标题】:MVCSiteMapProvider overriding GetDynamicNodeCollection with multiple requestsMVCSiteMapProvider 使用多个请求覆盖 ​​GetDynamicNodeCollection
【发布时间】:2015-11-25 16:37:48
【问题描述】:

我正在为 MVC5 使用 MVCSiteMapProvider。我创建了自己的 DynamicNodeProviderBase 实现,以根据我们产品目录的类别集合在我的站点地图中动态创建节点。

我正在使用 SimpleInjector 并有一个 MvcSiteMapProviderContainerInitializer,它是从站点地图提供程序的示例项目中提取的。这工作正常。

但是,当调用 Html.MvcSiteMap().SiteMapPath() 时,这会导致每个请求都调用 GetDynamicNodeCollection。动态节点收集是否可以在容器的每个生命周期而不是在每个请求的基础上完成一次?

提前致谢

【问题讨论】:

    标签: mvcsitemapprovider


    【解决方案1】:

    我实现的类实际上是作为单例创建的,所以现在我已经从构造函数中初始化了节点集合。现在就可以了。

    但是,我从 2012 年看到了这篇博文,但界面似乎在提供程序的更高版本中发生了变化,所以这不再可能

    http://xharze.blogspot.co.uk/2012/04/inside-mvcsitemapprovider-part-2.html?m=1

    【讨论】:

    • 不支持单例。动态节点提供者在启动时加载并缓存的节点,所以无论如何都不需要这样做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    • 1970-01-01
    • 2017-08-06
    • 2019-06-28
    • 1970-01-01
    相关资源
    最近更新 更多