gpt4 book ai didi

wcf - 如何通过 StructureMap 为具有 WCF 的自定义角色提供程序提供依赖注入(inject)?

转载 作者:行者123 更新时间:2023-12-04 18:53:52 25 4
gpt4 key购买 nike

我们将在 WCF 中使用自定义角色提供程序。被覆盖的方法 GetRolesForUser 将需要使用已经存在的 RoleRepository。

现在,使用普通类,我们将使用 StructureMap 构造它,并且 RoleRepository 依赖项将通过构造函数注入(inject)。

但是,它是 WCF 构建自定义角色提供程序类,并且通过 web.config 中的 roleManager 属性明确地“完成”。

我真的不想将 RoleRepository 依赖硬连接到自定义角色提供程序类中,但看起来我必须这样做。

有任何想法吗?

最佳答案

RoleProvider 和相关类型是 ASP.NET 的遗留物,它们因对 DI 不友好而臭名昭著。它们需要一个默认构造函数,并且没有提供用于初始化它们的钩子(Hook)。这很糟糕,但就是这样。

在这种情况下,最好的补救措施是将 RoleProvider 实现为 Humble Object .换句话说,RoleProvider 必须连接所有依赖项,但从那里,它将所有实现委托(delegate)给您自己的开放和可扩展 API。

关于wcf - 如何通过 StructureMap 为具有 WCF 的自定义角色提供程序提供依赖注入(inject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2026753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com