Как справиться с ситуацией, когда ошибка происходит во время публикации формы из пользовательского контроля просмотра?

У меня есть пользовательский элемент управления просмотра, который может отправлять форму. Этот элемент управления можно использовать для нескольких представлений. Если пользователь вводит неверные данные, я добавляю ошибки в ModelState - так просто. Проблема в том, что я не знаю, какое представление / actionresult вернуть, так как я не знаю, откуда пользователь отправляет форму. Хорошо, я могу получить urlreferer - но это не выглядит хорошо для меня. Любая идея?

1 ответ

Решение

Передайте информацию со своей родительской страницы контроллеру.

<% RenderPartial("MyUserControl", new MyUserControlViewData()
{
    // pass parent page info here for user control to redirect to such as
    Controller = "Home",
    Action = "Index"

   // or even better
   ParentPath = ((WebFormView)this.ViewContext.View).ViewPath
});
Другие вопросы по тегам