Я собираюсь предположить, что вы не отправляете через AJAX, поэтому вы делаете полный постбэк. В этом случае ваш вывод имеет смысл: вы публикуете в частичном представлении, а затем все, что вы получаете, - это HTML-код для частичного представления, поскольку после инициации публикации ваше HTML-состояние исчезает. Частичные являются просто частичными. Вы не можете публиковать частичные и ожидаете получить полный вывод.
Я бы порекомендовал либо публиковать в действии, которое отображает всю страницу, либо иметь частичную визуализацию либо в режиме полного просмотра страницы (return FullPageView( someData );
), либо делать переадресацию в просмотр полной страницы (return Redirect( "FullPageview" );
).
В качестве альтернативы, вы можете отправить сообщение через ajax и вернуть JsonResult
, а затем обработать любые изменения пользовательского интерфейса на клиенте (jquery и т. Д.). Вы должны быть в состоянии сделать это, используя Ajax.BeginForm () ... но я не использую это лично, поэтому ничем не могу помочь. Здесь есть сообщение здесь , в котором показано, как получить необработанный частичный вывод и обновить пользовательский интерфейс. Другой метод - вернуть объект с JsonResult
с обработкой ошибок и тому подобным, и проанализировать его. И.Е.
return Json( someReturnObjectThatYouDefinedThatMayAlsoHaveAnErrorState );