Используйте RenderMvcController для фильтрации списка в Umbraco

Моя цель - создать список содержимого (определенного типа документа) . в этом списке у меня есть кнопка фильтра и два ddlist, динамически заполняемые дочерними данными. когда пользователь нажимает "фильтр", список должен обновляться выбранными значениями ddlist. Возможно ли использовать RenderMVCController для этого? Я не мог использовать surfaceController, потому что не могу получить доступ к действию Index перед рендерингом страницы. Можно ли использовать Ajax, когда пользователь отправляет форму вместо обновления всей страницы?

Посмотреть

using (Html.BeginUmbracoForm("FilterPage", "inTheFieldController", FormMethod.Post, htmlAttributes: new { @id = "PageInTheField" }))
{
//....
}

контроллер

public class inTheFieldController : RenderMvcController
{

    private readonly UmbracoContext umbracoContext;

    public inTheFieldController()
    {
        umbracoContext = UmbracoContext.Current;
    }


    // GET: inTheField
    public ActionResult Index()//RenderModel model)
    {
}

и я хочу иметь что-то вроде этого:

  [HttpPost]
  public ActionResult FilterPage(inTheFieldModel model)
  {
    return null
     }

Но он никогда не доходил до этой точки, он запрашивает SurfaceController.

введите описание изображения здесь

1 ответ

Да, если вы используете BeginUmbracoForm, он всегда ожидает SurfaceController. В идеале вы должны использовать SurfaceController для форм. Я не совсем понимаю, что вы пытаетесь сделать здесь, но вы можете использовать @Ajax.BeginForm и связать это с действием SurfaceController

Другие вопросы по тегам