Я использую следующий код:
public string RenderPartialToString(ControllerContext context, string partialViewName, ViewDataDictionary viewData, TempDataDictionary tempData)
{
ViewEngineResult result = ViewEngines.Engines.FindPartialView(context, partialViewName);
if (result.View != null)
{
StringBuilder sb = new StringBuilder();
using (StringWriter sw = new StringWriter(sb))
{
using (HtmlTextWriter output = new HtmlTextWriter(sw))
{
ViewContext viewContext = new ViewContext(context, result.View, viewData, tempData, output);
result.View.Render(viewContext, output);
}
}
return sb.ToString();
}
return String.Empty;
}
Чтобы вернуть частичное представление и форму через JSON. Это работает, как и должно, но как только я получаю ошибки состояния модели, мой ValidationSummary не отображается. JSON возвращает только форму по умолчанию, но она не выделяет ошибки проверки и не отображает сводку проверки.
Я что-то упустил?
Вот как я вызываю RenderPartialToString:
string partialView = RenderPartialToString(this.ControllerContext, "~/Areas/User/Views/Account/ChangeAccountDetails.ascx", new ViewDataDictionary(avd), new TempDataDictionary());