![]() |
1
1
如果类型参数是特定于上下文的,我认为它不会如图所示工作。如果需要在构造函数中传递特定于上下文的内容,则可能需要创建一个工厂接口和实现,该接口和实现返回ilogger的实例:
可以根据类型引导结构映射来提供所需的实例,但前提是预先知道的类型数量有限。 |
![]() |
2
24
我们在log4net周围使用类似的ilogger包装器,通常使用构造函数注入。我们使用拦截器作为负责创建记录器的工厂方法。这里是日志设置的典型注册表。
当依赖于具体类型时,需要进行父类型空检查。 其余是可选的log4net安装工具。 我喜欢这个设置的一件事是能够使用空记录器进行单元测试。 |
![]() |
3
1
我真的需要改掉回答我自己问题的习惯,但对于遇到这个问题的人来说,答案是这样的。
我实际上有一个到structuremap的包装(为了避免向我的应用程序公开structuremap依赖项),如下所示:
在代码中的任何时候我需要一个记录器,我调用以下代码:
|
![]() |
Navid K · 与StructureMap 4.6瞬态生命周期混淆 7 年前 |
![]() |
ViqMontana · 如何使用结构图模拟基类? 8 年前 |
|
chapas · 注入到不同的项目/程序集中 8 年前 |
![]() |
Morn · 构造函数依赖注入WebApi属性 10 年前 |
![]() |
Martin R-L · 可以使用约定注入基于ctor参数名称的命名实例吗? 13 年前 |