Chr*_*sic 6 c# structuremap lifecycle inversion-of-control
在我的注册表中我有
Scan(scanner =>
{
scanner.AssemblyContainingType<EmailValidation>();
scanner.ConnectImplementationsToTypesClosing(typeof(IValidation<>));
});
Run Code Online (Sandbox Code Playgroud)
我应该做些什么来将这些全部定义为单身人士?
另外,作为这个问题的一小部分,有没有理由不将无状态的所有内容定义为在StructureMap中注册的单例对象?
Jos*_*gan 12
Kevin的答案对于2.5.4及更早版本是正确的.在当前的StructureMap主干中(当发布2.5.5+时),您现在可以:
Scan(scanner =>
{
scanner.AssemblyContainingType<EmailValidation>();
scanner.ConnectImplementationsToTypesClosing(typeof(IValidation<>))
.OnAddedPluginTypes(t => t.Singleton());
});
Run Code Online (Sandbox Code Playgroud)