c# – StructureMap:如何在与ConnectImplementationsToTypesClosing相关的类型上设置生命周期

前端之家收集整理的这篇文章主要介绍了c# – StructureMap:如何在与ConnectImplementationsToTypesClosing相关的类型上设置生命周期前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的注册表中我有
  1. Scan(scanner =>
  2. {
  3. scanner.AssemblyContainingType<EmailValidation>();
  4. scanner.ConnectImplementationsToTypesClosing(typeof(IValidation<>));
  5. });

我应该做些什么来将这些全部定义为单身人士?

另外,作为这个问题的一小部分,有没有理由不将无状态的所有内容定义为在StructureMap中注册的单例对象?

解决方法

Kevin的答案对于2.5.4及更早版本是正确的.在当前的StructureMap主干中(当发布2.5.5时),您现在可以:
  1. Scan(scanner =>
  2. {
  3. scanner.AssemblyContainingType<EmailValidation>();
  4. scanner.ConnectImplementationsToTypesClosing(typeof(IValidation<>))
  5. .OnAddedPluginTypes(t => t.Singleton());
  6. });

猜你在找的C#相关文章