같은 클래스의 여러 인스턴스를 등록하려고하면 해당 클래스의 열거 형을 삽입 할 때 모든 인스턴스가 검색됩니다.C# Unity Dependency Injection, 어떻게 인스턴스의 열거 형을 검색 할 수 있습니까?
public class ActionDialogType
{
public Type Type { get; set; }
public string Name { get; set; }
}
public class ActionDialogTypeUser
{
private IEnumerable<ActionDialogType> _types;
public ActionDialogTypeUser(IEnumerable<ActionDialogType> types)
{
_types = types
}
public void DoSomethingWithTypes()
{
// Do Something with types
}
}
은 지금까지 내가 가지고 :
는public class UnityConfig
{
public IUnityContainer Register()
{
UnityContainer container = new UnityContainer();
ActionDialogType actionDialogType1 = new ActionDialogType
{
Name = "Something",
Type = typeof(Something)
};
container.RegisterInstance<IActionDialogType>(actionDialogType1, new ContainerControlledLifetimeManager());
ActionDialogType actionDialogType2 = new ActionDialogType
{
Name = "SomethingElse",
Type = typeof(SomethingElse)
};
container.RegisterInstance<ActionDialogType>(actionDialogType2, new ContainerControlledLifetimeManager());
container.RegisterType<IEnumerable<ActionDialogType>, ActionDialogType[]>();
return container;
}
}
는 사람이 어떻게 이렇게하는 저를 게재 할 수 있습니까?
할 수있는 이상한 것 같아,하지만 당신은 단지 배열에 그'ActionDialogType's를 추가하고 해당 배열의'RegisterInstance'하지 않을까요? – Crowcoder