Autofac-注册所有Windows窗体
本文关键字:Windows 窗体 注册 Autofac- | 更新日期: 2023-09-27 18:00:09
有没有办法让Autofac自动注册程序集中的所有Windows窗体?这个功能很可能类似于Autofac MVC支持注册所有控制器的能力?
现在,我做:
foreach (var type in Assembly.GetExecutingAssembly().GetTypesSafely().Where(type => type.IsSubclassOf(typeof(Form))))
builder.RegisterType(type);
这里有一个简单而甜蜜的方法:
var assembly = Assembly.GetExecutingAssembly();
builder.RegisterAssemblyTypes(assembly)
.AssignableTo<Form>();
据我所知,没有一个内置方法可以添加所有Win Forms。但你可以这样做。
var assembly = Assembly.GetExecutingAssembly();
builder.RegisterAssemblyTypes(assembly)
.Where(type => type.IsSubclassOf(typeof(Form)));