【问题标题】:Passing Configuration Entity using StructureMap使用 StructureMap 传递配置实体
【发布时间】:2016-11-08 17:00:29
【问题描述】:

我有一个名为IProcessor 的接口。我有以下课程

interface IProcessor {}
class ABCProcessor : IProcessor { }
class PQRProcessor : IProcessor { }
...

我已经注册了他们使用

scan.AddAllTypesOf<IProcessor>().NameBy()

现在,我想将配置实体(DTO 类)传递给每个处理器。

我怎样才能使用 structureMap 达到同样的效果?

【问题讨论】:

    标签: c# ioc-container structuremap


    【解决方案1】:

    假设:

    • 您可以在执行var container = new Container( 之前构建配置实体 (dtoInstance)
    • 您的配置实体构建一次且不可变
    • 您的 ABCProcessorPQRProcessor 具有采用该实体的构造函数

    您可以在 Container 中显式注册实现:

    x.For(IProcessor).Use(new ABCProcessor(dtoInstance));
    x.For(IProcessor).Use(new PQRProcessor(dtoInstance));
    

    这里有很多例子:http://structuremap.github.io/registration/auto-registration-and-conventions/

    另外,https://stackoverflow.com/a/5640052/270576

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-26
      • 1970-01-01
      相关资源
      最近更新 更多