0
在TinyIoC文档我看到如何重写autoregistrations南锡/ TinyIoC
默认TinyIoC将注册具体类的多实例和接口注册为单身
测试与南希这种行为,则如预期在下面的构造通过例如,单(因为它解决了一个接口):
public class HelloModule : NancyModule
{
public HelloModule(IMyInterface mi)
{
...
}
}
我想李可以为此类型重写此行为,以便获得每个请求实例。我看到的TinyIoC文档中的其他地方
AutoRegister还可以与“正常”
因此,鉴于MyInterfaceImpl : IMyInterface
,我说的Nancy.Bootstrapper.IRegistrations
的实现,像这样
public class Registrations : IRegistrations
{
public IEnumerable<TypeRegistration> TypeRegistrations
{
get
{
return new List<TypeRegistration>()
{
new TypeRegistration(typeof(IMyInterface), typeof(MyInterfaceImpl), Lifetime.PerRequest)
};
}
}
public IEnumerable<CollectionTypeRegistration> CollectionTypeRegistrations { get; private set; }
public IEnumerable<InstanceRegistration> InstanceRegistrations { get; private set; }
}
,这似乎工作。
这是完成注册覆盖的可靠方法吗?这个额外的注册是否实际上删除了现有的自动注册?我想确保这种类型的注册没有多个注册,并且由于注册类型集合中的任意排序或其他可能会改变的内部结构,我的结果不仅仅是一个快乐事故。