Wonder, если кто-то может помочь мне здесь ......Pass модели обратно на страницу
В основном то, что я пытаюсь сделать, если на вывешивания формы, я делаю некоторые пользовательские проверки и если предоставленные данные не соответствуют бизнесу, я хотел бы прекратить обработку (очевидно!) и передать входящую модель обратно в представление, содержащее форму, чтобы пользователь не должен был повторно вводить все их данных.
То, как я установить это есть (Это использование Umbraco как CMS):
1) Я создал модель/свойства. 2) Я тогда создал сильно типизированный частичный вид и выбранный класс модели, который я только что создал (названный AwardsCeremony) 3) Я тогда создал контроллер со следующим Index ActionResult:
public ActionResult Index()
{
TempData["priceList"] = getPrices();
TempData["qualificationList"] = getQualifications();
return PartialView("AwardsCeremony", new AwardsCeremonyViewModel());
}
4) Затем в шаблоне Umbraco Я звоню контроллер
@Html.Action("Index", "AwardsCeremonySurface")
(это Umbraco наследует это стиль, и т.д. из шаблона Master (в Umbraco)).
В представлении (на событии HTTPPOST) я вызываю процесс обработки событий на контроллере.
@using (Html.BeginUmbracoForm("processBooking", "AwardsCeremonySurface", null, new { @class = "form-horizontal" }))
Это ActionResult затем делает проверку ошибок и что, где начинаются проблемы (!), Я удалил свою пользовательскую проверку для удобства чтения.
[HttpPost]
public ActionResult processBooking(AwardsCeremonyViewModel model)
{
//Do the custom error handling
if (myInvalidForm == true)
{
return PartialView("AwardsCeremony",model);
}
//Process the booking
return RedirectToCurrentUmbracoPage();
}
Что происходит, что, когда частичный вид возвращается обратно стиль страницы теряется, форма отображается, но ни с одним из унаследованного стиля, классов и т.д. от Мастера шаблонов Umbraco, и я просто не» t знать, как исправить. Может ли кто-нибудь указать мне в правильном направлении, пожалуйста?
Спасибо, Craig
Cheers bud, я понимаю, почему стиль утерян. Я просто не знаю, что с ним делать (!), Если я возвращаюсь пользователем (модель), тогда я получаю сообщение об ошибке «processBooking» или его мастер не найден, или никакой механизм просмотра не поддерживает найденные местоположения. Были обысканы следующие местоположения: – SxChoc
Вид должен быть таким же, как тот, который вы использовали для вашего запроса GET. Если вы полагаетесь на загрузку представления на основе конвенций в своем действии GET, и ваше действие POST не называется одинаковым, вам нужно будет явно передать имя представления: 'return View (« GetView », model);' –
Не уверен, что я понимаю, что буду честным помощником, если вы предлагаете использовать синтаксис, который я должен использовать, это return View («AwardsCeremony», model); то я получаю следующую ошибку. Элемент модели, переданный в словарь, имеет тип «ICASolution.Models.AwardsCeremonyViewModel», но для этого словаря требуется элемент модели типа «Umbraco.Web.Models.RenderModel». – SxChoc