Исключение: ComponentActivator: не может прокси-сервер AsFactoryImplementation. <FactoryType>

Я пробовал этот код для реализации Factory в замке Windsor, но он выбрасывает и исключает, как показано в названии этой проблемы. Я следую примерам Документация здесь . PLZ указать, где я получаю неправильно.

using System;
using System.Windows.Forms;
using Castle.Facilities.TypedFactory;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Castle.MicroKernel.Registration;
using Castle.Windsor;

namespace AsFactoryImplementation
{
interface IDummyComponnentFactory
{
    IDummyComponnent creat();
    void Relese(IDummyComponnent factory);
}

interface IDummyComponnent
{
    void show();
}

class DummyComponnent:IDummyComponnent
{
    public void show()
    {
        Console.WriteLine("just testing this for better performance");
    }
}

class Program:WindsorContainer
{
    static void Main(string[] args)
    {
        var container = new WindsorContainer();
        container.AddFacility();

        container.Register(Component.For().ImplementedBy().Named("FirstConnection").LifeStyle.Transient
            ,Component.For().AsFactory());

        var val = container.Resolve();
        val.show();

        var val2 = container.Resolve();

    }
}

}

1

1 ответы

Разве внутреннее исключение не объясняет это достаточно хорошо?

Тип AsFactoryImplementation.IDummyComponnentFactory не отображается   DynamicProxy. Невозможно создать прокси-сервер для не доступных типов.   Сделайте тип общедоступным или внутренним и отметьте свою сборку   <Код> [сборка:   InternalsVisibleTo (InternalsVisible.ToDynamicProxyGenAssembly2)]   атрибут.

7
добавлено