这里,似乎做我想做的,并保留模型,从我可以告诉绑定的代码一个有趣的珍闻。
protected string RenderPartialViewToString(string viewName, object model)
{
controller.ViewData.Model = model;
using (StringWriter sw = new StringWriter())
{
ViewEngineResult viewResult = ViewEngines.Engines.FindPartialView(controller.ControllerContext, viewName);
ViewContext viewContext = new ViewContext(controller.ControllerContext, viewResult.View, controller.ViewData, controller.TempData, sw);
viewResult.View.Render(viewContext, sw);
return sw.GetStringBuilder().ToString();
}
}
工程就像一个魅力。我只是使用它并将字符串作为JSON参数传递,然后在客户端上读取参数并将其放入适当的容器中。我很高兴能有这个工作。
我想也许你误会了。我想在一个返回JsonResult的操作方法中包含一个asp.net MVC partial view。就我所知,您不能只将ViewResult放入JsonResult中。你如何将视图转换为字符串并将其粘贴到jsonresult上? – Chev 2010-11-11 04:23:51
我已经更新了答案。它应该适合你。我很感激我可以评价/分享我的博客文章,因为我专门回答了这个问题:) – 2010-11-11 06:09:17
View()似乎没有一个名为Capture的方法。我找到了我需要的东西,并将其作为我自己问题的答案发布。谢谢您的帮助。 – Chev 2010-11-11 08:55:14