Uzyskanie jedności w celu rozwiązania wielu instancji tego samego typu
Chcę zrobić proste rozwiązanie wielu rejestracji typu (ostatecznie wstrzyknięty konstruktor, ale używając .Resolve, aby sprawdzić, czy Unity jest nawet zdolne do takich rzeczy.
W każdym przypadku poniżej Jedność rozpatruje 0 przedmiotów, w których powinna być rozpatrywana 2.
Czy jest jakaś zmiana w jedności, która zmienia zachowanie po 2007 roku? Czy po prostu drastycznie mi czegoś brakuje?
Oto mój kod:
public interface IFoo {}
public class Foo1 : IFoo{}
public class Foo2 : IFoo{}
class Program
{
static void Main(string[] args)
{
var container = new UnityContainer();
container.RegisterType<IFoo, Foo1>();
container.RegisterType<IFoo, Foo2>();
// container.Resolve<IEnumerable<IFoo>>(); returns 0
// container.ResolveAll<IFoo>(); returns 0
var foos = container.Resolve<IFoo[]>();
Console.WriteLine(foos.Count());
Console.ReadLine();
}
}