ASP.NET MVC возвращает другое представление - PullRequest
29 голосов
/ 25 ноября 2008

У меня есть представление, которое содержит форму, сообщения формы, данные обрабатываются и т. Д., Затем я хочу вернуть индекс представления, поэтому возвращаем представление («Индекс»);

однако тогда он будет жаловаться на то, что мои ViewData не существуют, у меня возникает ощущение, что код контроллера в Index () не обрабатывается, что добавляет список, необходимый для ViewData, кто-нибудь знает, что случилось?

Спасибо

edit: Видимо, это сделано для предотвращения рекурсии ... в этом случае я теряюсь в том, что делать, не повторяя все мои вещи ViewData для обоих контроллеров

Ответы [ 2 ]

57 голосов
/ 25 ноября 2008

Я думаю, у вас должно быть два действия: одно, которое обрабатывает отправку формы, и другое, которое собирает данные для представления. Как только форма была обработана, вы звоните return RedirectToAction("Index") и все готово. Надеюсь, я понял, что вы имели в виду под этим.

6 голосов
/ 29 ноября 2008

Если ваш метод Index на контроллере выполняет return View("Index");, просто вызовите метод Index с любыми необходимыми параметрами. Затем метод заполнит ViewData, возвращенный представлением индекса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...