我的应用程序中有2个插件(ASP.NET MVC 4)。它们都使用相同的界面。
例如
MyApp.Plugins.Abstract.IMainPlugin
使用必需的执行方法
现在,我有一个名为MyApp.Plugins.ClockPlugin
和MyApp.Plugins.TimePlugin
的插件。 ClockPlugin类里面有属性Code
(public int Code {get; set;}
),它必须由StructureMap使用StructureMap.config文件注入(如何?)。
到目前为止,我的StructureMap.config:
<StructureMap MementoStyle="Attribute">
<DefaultInstance
PluginType="MyApp.Plugins.Abstract.IMainPlugin, MyApp.Domain"
PluggedType="MyApp.Plugins.TimePlugin, MyApp.Plugins" />
</StructureMap>
如何在此默认实例中添加ClockPlugin
并为Code
添加自动设置器?
答案 0 :(得分:0)
根据the docs:
原始构造函数或setter参数只是在Xml节点中定义为属性
例如:
<StructureMap MementoStyle="Attribute">
<DefaultInstance
PluginType="StructureMap.Testing.Widget.IWidget,StructureMap.Testing.Widget"
PluggedType="StructureMap.Testing.Widget.ColorWidget,StructureMap.Testing.Widget"
Scope="Singleton"
Color="Red" />
</StructureMap>
应将Color
属性设置为Red
。