我想使用container.RegisterTypes注册从特定基类派生的所有类
我尝试使用IsSubclassOf(typeof(FeatureBase))所有类的RegisterTypes,但不知道如何设置映射
class Program
{
static void Main(string[] args)
{
var container = new UnityContainer();
container.RegisterTypes(
AllClasses.FromLoadedAssemblies().Where(type => type.IsSubclassOf(typeof(FeatureBase))),
WithMappings.FromMatchingInterface,
WithName.TypeName,
WithLifetime.Transient);
var features = container.Resolve<List<FeatureBase>>();
}
}
public class FeatureBase { }
public class FeatureA : FeatureBase { }
public class FeatureB : FeatureBase { }
功能应包含从FeatureBase派生的所有类的列表。 如果我在类中使用接口(即IFeature),但我想知道如何使之工作,但想知道是否可以使用基类代替接口。