Можно ли указать в Unity Resolve, какой конструктор должен использовать Unity?
Объект, который я пытаюсь создать, может выглядеть примерно так:
public class MyObject
{
[UseWhenSunny]
public MyObject(InputOne one)
{
Console.WriteLine("Chose constructor one");
}
[UseWhenRaining]
public MyObject(InputTwo two)
{
Console.WriteLine("Chose constructor two");
}
}
public class InputOne
{
}
public class InputTwo
{
}
Моя конструкция может быть что-то вроде этого:
var container = new UnityContainer();
container.RegisterInstance(new InputTwo());
var myObject = container.Resolve<MyObject>();
Я могу достаточно легко найти правильный ConstructorInfo, но я не понял, как заставить Unity использовать этот специфицированный c конструктор?