2016-11-08 94 views
0

我有一個名爲IProcessor的接口。我一直在使用使用StructureMap傳遞配置實體

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

現在,我想通過一個configurationEntity(DTO類)每個處理器的下列類別

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

我已經註冊了他們。

如何使用結構圖實現相同?

回答

0

假設:

  • 你能var container = new Container(之前構建配置實體(dtoInstance)被執行
  • 配置實體構造一次,是不可改變的
  • ABCProcessorPQRProcessor有構造採取該實體

您可以註冊實現實例

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