2015-07-30 2 views
1

Я использую web api 2 и имею контроллер, который наследует от другого контроллера, который переопределяет метод Initialize() ApiController.Web Api - Initialize() не называется

Итак:

public class ControllerA : Controller B 

затем:

public class ControllerB : ApiController 
{ 
    protected override void Initialize(HttpControllerContext controllerContext) 
    { 
     var httpContext = GetHttpContext(controllerContext.Request); 
     // Do some stuff 
     base.Initialize(controllerContext); 
    } 
} 

Но когда я отладки, точка останова на Initialize никогда не попал. Другие точки останова попали, но не по этому методу. Есть идеи?

+0

«Контроллер B», вероятно, должен быть одним словом, но я сомневаюсь, что это вызывает его, вероятно, опечатку. – Orphid

+0

Почему бы просто не использовать конструктор вместо метода Initialize? Конструктор * имеет *, который вызывается. –

+0

Вызывается ли это, если вы запрашиваете ControllerB? – AlwaysAProgrammer

ответ

0

Initialize Метод не похож на конструктор при вызове контроллера. Его следует вызывать вручную для повторной инициализации моего контекста контроллера в другом классе.

Смежные вопросы