【问题标题】:How to configure sitemaps using MVCSiteMapProvider with StructureMap DI如何使用 MVCSiteMapProvider 和 StructureMap DI 配置站点地图
【发布时间】:2014-04-17 04:40:12
【问题描述】:
我将 StructureMap 作为在我的项目中进行 DI 的一种方式。我想在我的项目中创建站点地图。
我从 NuGet 安装 MvcSiteMapProvider MVC4 StructureMap Dependency Injection Configuration。
它需要手动配置,但我不知道如何配置。
感谢您的帮助
【问题讨论】:
标签:
asp.net-mvc-4
structuremap
mvcsitemapprovider
【解决方案1】:
如果您在项目中安装了MvcSiteMapProvider.MVC4.DI.StructureMap,则不需要手动配置。当您的项目中还没有 DI 时,可以使用此包 - 它包含一个组合根,旨在用作为整个项目注册所有 DI 配置的单一位置。
但是,如果您将MvcSiteMapProvider.MVC4.DI.StructureMap.Modules 安装到您的项目中,则需要手动配置。此软件包旨在用于具有预先存在的 DI 设置的项目。您只需按照readme file 中的说明将其添加到您现有的配置中。确切的过程可能会因项目而异,但自述文件包含需要添加的所有必需和可选代码行。关键是您需要确保整个项目只实例化 1 个 DI 容器,并且所有模块都注册到它。
请注意MvcSiteMapProvider.MVC4.DI.StructureMap 依赖于MvcSiteMapProvider.MVC4.DI.StructureMap.Modules,因此您可以使用单个包管理器命令轻松降级。
PM> Uninstall-Package MvcSiteMapProvider.MVC4.DI.StructureMap
确保不使用 -RemoveDependencies 选项。