У меня новое приложение MVC3 с несколькими устаревшими страницами веб-форм. Я знаком с Ninject и MVC, но я хочу использовать Ninject и со страницами веб-форм. Я что-то взломал, но не уверен, что это правильный путь.
Я выставил ядро Ninject следующим образом:
public static IKernel Kernel { get { return CreateKernel(); } }
private static IKernel CreateKernel()
{
var kernel = new StandardKernel();
RegisterServices(kernel);
return kernel;
}
Затем я создал базовый класс для своих страниц веб-форм, который внедряет ядро:
public class NinjectBase : Page
{
public IKernel Kernel { get; private set; }
public NinjectBase() { Kernel = NinjectMVC3.Kernel; }
public void Page_Init() { Kernel.Inject(this); }
}
Кажется, это работает достаточно хорошо. Что-то не так с этим подходом? Есть ли другой способ, которым я должен идти об этом?