Объект перехвата, созданный не из обычного ядра - PullRequest
0 голосов
/ 29 мая 2011

Допустим, у меня есть класс:

public class SomeClass {
    public virtual void InterceptedMethod ()
    {
        // Do something.
    }
}

Я использую Ninject с перехватом расширение.Я хочу перехватить InterceptedMethod.Если я создал объект из недействительного ядра, этот метод перехватывается.

kernel = InitializeKernel ();
SomeClass objectFromKernel = kernel.Get<SomeClass> ();
objectFromKernel.InterceptedMethod (); // this method is intercepted.

Но, если я создал объект не из ядра, этот метод НЕ перехватывается.

kernel = InitializeKernel ();
SomeClass objectSelfCreated = new SomeClass ();
objectSelfCreated.InterceptedMethod (); // this method is NOT intercepted.

Возможно ли этоперехватить самодельный объект с помощью ninject?Если возможно, как я могу это сделать?

1 Ответ

1 голос
/ 29 мая 2011

Нет, Ninject не может помочь вам в этой ситуации. Вы должны сами создать прокси или изменить дизайн так, чтобы объект создавался Ninject. О том, как это сделать, см. Документацию вашей фабрики прокси.

...