Omu*_*Omu 90 asp.net-mvc razor asp.net-mvc-3
有人知道如何在动作中获取生成的视图html吗?
它是这样的:
public ActionResult Do()
{
var html = RenderView("hello", model);
...
}
Run Code Online (Sandbox Code Playgroud)
Che*_*hev 152
我在类I中使用静态方法,Utilities.Common我将视图作为JSON对象的属性不断传递回客户端,因此我需要将它们渲染为字符串.你走了:
public static string RenderPartialViewToString(Controller controller, 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.ToString();
}
}
Run Code Online (Sandbox Code Playgroud)
这将适用于完整视图以及部分视图,只需更改ViewEngines.Engines.FindPartialView为ViewEngines.Engines.FindView.
| 归档时间: |
|
| 查看次数: |
23888 次 |
| 最近记录: |