从Controller返回PartialView和Javascript

我看到这里有一个问题,但没有明确的答案。 有任何想法如何返回使用Javascript或JSON的PartialView。 我正在做一个AJAXpost,成功它渲染PartialView但是然后需要运行一些javascript或检查JSON结果。

public static string RenderPartialToString(string controlName, object viewData, object model, System.Web.Routing.RequestContext viewContext) { ViewDataDictionary vd = new ViewDataDictionary(viewData); ViewPage vp = new ViewPage { ViewData = vd }; vp.ViewData = vd; vp.ViewData.Model = model; vp.ViewContext = new ViewContext(); vp.Url = new UrlHelper(viewContext); Control control = vp.LoadControl(controlName); vp.Controls.Add(control); StringBuilder sb = new StringBuilder(); using (StringWriter sw = new StringWriter(sb)) { using (HtmlTextWriter tw = new HtmlTextWriter(sw)) { vp.RenderControl(tw); } } return sb.ToString(); } 

我认为为另一个问题提供的答案可能是您最好的选择。 你不能突然有另一个onSuccess方法签名,其中另一个参数是用JSON对象添加的,因此你会遇到一个返回对象。 从逻辑上讲,此对象必须包含视图和JSON对象,这意味着对象本身必须是JSON对象。