Неспособность передать общие аргументы с замком Виндзор

Кажется, есть проблема с передачей общих аргументовпри попытке создать параметризованный экземпляр с помощью Castle Windsor

Демонстрация неспособности передать общие аргументы
    private static void Main(string[] args)
    {
        PassGenericParamAtResolutionTime();
        Console.ReadLine();
    }

    private static void PassGenericParamAtResolutionTime()
    {
        Console.WriteLine("Passing generic argument fails");
        var container = new WindsorContainer();
        container.Register(Component.For()
                           .ImplementedBy());
        var runtimeConstructorParam = new GenericManager(
                                          "This Id Does Not Get Through");
        var runtimeArguments = new Arguments(
                                   new object[] {runtimeConstructorParam});
        var shouldBeParameterizedCoordinator = container
                   .Resolve(runtimeArguments);
        Console.WriteLine(shouldBeParameterizedCoordinator.Log);
    }
Консольный выход
Passing generic argument fails
Birth from parameterless constructor, which should not happen

И если я закомментирую конструктор без параметров ниже, я получу следующее исключение:

Castle.MicroKernel.Resolvers.DependencyResolverException was unhandled
Missing dependency.
Component Sand.SandCoordinator`1[[Sand.Simpleton, WindsorSand, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]] has a dependency on Sand.IGenericManager`1[Sand.Simpleton], which could not be resolved.
Make sure the dependency is correctly registered in the container as a service, or provided as inline argument.
Демо-класс с двумя конструкторами
class SandCoordinator : ISandCoordinator
                                    where TSimpleton : ISimpleton
{
    public SandCoordinator()
    {
        Log = "Birth from parameterless constructor, which should not happen";
    }

    public SandCoordinator(IGenericManager manager)
    {
        Log = "Birth from parameterized constructor";
        Log += Environment.NewLine + "Born With Manager: " + manager.Id;
    }        

    public string Log { get; private set; }
}
Решения / Обходные пути?Я знаю, что если я создаю неуниверсальный типinterface ISimpleSandCoordinator : ISandCoordinator и зарегистрировать неуниверсальный интерфейс, то параметризованное разрешение работает, но я нене хочу прекращать использовать универсальные типыДолжно ли это быть ошибкой в замке Виндзор? [

Использование Castle.Core.dll и Castle.Windsor.dll 3.1.0 (2012-08-05)]

Ответы на вопрос(1)

Ваш ответ на вопрос