MVC3 Почему я получаю сообщение об ошибке «Дочерним действиям не разрешено выполнять действия перенаправления»?

Я получил список действий

    //[HttpGet] (will come back to that!)
    public ViewResult List(int page = 1)
    {
        //blah blah blah
        return View(viewModel);
    }

В его представлении мы отображаем действие:

@{        
    Html.RenderAction("UpdateSearch");
}

Определения действий:

[ChildActionOnly]
[HttpGet]
public PartialViewResult UpdateSearch()
{
    // do something and display a form in view
    return PartialView(so);
}

[HttpPost]
public RedirectToRouteResult UpdateSearch(Options searchOptions)
{
    // do something and redirect to List
    return RedirectToAction("List");
}

и я получаю: Дочерним действиям не разрешено выполнять перенаправление исключение действий каждый раз, когда кто-то отправляет форму. Я новичок в MVC3, но похоже, что перенаправление также является POST, потому что, если [HttpGet] над методом List раскомментирован, происходит «ресурс не может быть найден».

Как изменить метод Http при перенаправлении или я делаю что-то не так? Я пытался использовать Bing, но безуспешно.

5
задан Mariusz.W 20 March 2012 в 15:16
поделиться