Я использую Autofac 2.1.12 для обработки внедрения зависимостей, и у меня возникли проблемы с одной конкретной проблемой. Кажется, я не могу разрешить зависимость NameValueCollection.
Рассмотрим следующий фрагмент кода:
class Foo
{
public Foo(NameValueCollection collection) { }
}
static class Run
{
public static void Main()
{
var builder = new ContainerBuilder();
builder.RegisterType<NameValueCollection>();
builder.RegisterType<Foo>();
using (var scope = builder.Build())
scope.Resolve<Foo>();
}
}
Это приведет к сбою с необработанным исключением DependencyResolutionException:
Обнаружена циклическая зависимость компонентов: Foo -> System.Collections.Specialized.NameValueCollection -> System.Collections.Specialized.NameValueCollection.
Однако, если я заменю NameValueCollection любым другим типом, код будет работать нормально.
Я что-то делаю неправильно, есть ли что-то особенное в типе NameValueCollection, которого мне не хватает, или это проблема с самим Autofac?