Перехватчики StructureMap - PullRequest
6 голосов
/ 24 мая 2009

У меня есть куча сервисов, которые реализуют различные интерфейсы. например, IAlbumService, IMediaService и т. д.

Я хочу регистрировать вызовы для каждого метода на этих интерфейсах. Как мне сделать это с помощью StructureMap?

Я понимаю, что это почти то же самое, что и вопрос , просто я не использую Виндзор.

1 Ответ

2 голосов
/ 29 ноября 2014

Я думаю, что вы ищете этот ответ .

static void Main()
{
    ObjectFactory.Configure(x =>
    {
        x.For<Form>().Use<Form1>()
            .InterceptWith(new ActivatorInterceptor<Form1>(y =>  Form1Interceptor(y), "Test"));
    });
    Application.Run(ObjectFactory.GetInstance<Form>());

}

public static void Form1Interceptor(Form f)
{
    //Sets the title of the form window to "Testing"
    f.Text = "Testing";
}

Я бы не использовал ObjectFactory в реальном приложении, но, по крайней мере, концепция есть.

...