我有一個接口註冊T型接口的所有執行
public interface IEvent { }
事件類
public class ContactEvent : IEvent { }
兩個事件處理類
public class ContactCreateHandler : IEventHandler<ContactEvent> { }
public class ContactUpdateHandler : IEventHandler<ContactEvent> { }
在.NET 4.5,這是可能的使用Autofac
var assemblies = BuildManager.GetReferencedAssemblies()
.Cast<Assembly>()
.ToArray()
builder.RegisterAssemblyTypes(assemblies)
.AsClosedTypesOf(typeof(IEventHandler<>)).AsImplementedInterfaces().InstancePerRequest();
然後我會基礎上,T型
var handlerList = _container.Resolve<IEnumerable<IEventHandler<T>>>();
如何在.NET核心爲此