我需要在Autofac中注册一些通用接口。
使用Structure Map我使用以下内容:
Scan(x => {
x.AssemblyContainingType<MvcApplication>();
x.AddAllTypesOf(typeof(IEventHandler<>));
x.AddAllTypesOf(typeof(IOrderHandler<,>));
x.AddAllTypesOf(typeof(IAsyncEventHandler<>));
x.AddAllTypesOf(typeof(IAsyncOrderHandler<,>));
x.WithDefaultConventions();
});
在Autofac中注册这些泛型的最佳方法是什么?
我想指定四个接口......
答案 0 :(得分:1)
您可以使用AsCloseTypesOf
方法:
builder.RegisterAssemblyTypes(typeof(MvcApplication).Assembly)
.AsClosedTypesOf(typeof(IEventHandler<,>))