साथ एक सामान्य प्रकार के सभी कार्यान्वयन के लिए स्कैन करने के लिए कैसे हम डोमेन घटनाओं पद्धति का उपयोग कर रहे हैं और हमारे आईओसी कंटेनर पर झुकाव घटना की एक विशेष प्रकार के लिए संचालकों का पता लगाने की:Ninject
public interface IHandleEvent<TEvent> where TEvent : IEvent
{
void Handle(TEvent evnt);
}
हम StructureMap के साथ स्कैन कर सकते हैं और सभी प्रकार रजिस्टर इसलिए की तरह ऊपर इंटरफ़ेस को लागू करने:
Scan(cfg =>
{
cfg.TheCallingAssembly();
cfg.ConnectImplementationsToTypesClosing(typeof(IHandleEvent<>));
});
वहाँ Ninject के साथ एक बराबर है?
वर्तमान में मैं इतना की तरह अलग-अलग हैंडलर बाध्य करने के लिए हो रही है:
kernel.Bind<IHandleEvent<SomeEvent>>().To<EventHandler1>();
kernel.Bind<IHandleEvent<SomeEvent>>().To<EventHandler2>();
kernel.Bind<IHandleEvent<SomeOtherEvent>>().To<EventHandler3>();