把部分视图转换为html字符串,你可以参考下面的方法:
public static string RenderPartialViewToString(Controller controller, string viewName, object model) { controller.ViewData.Model = model; try { 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(); } } catch (Exception ex) { return ex.ToString(); } }
在ASP.NET MVC中创建部分(Partial view)视图,可以直接在相对应的目录创建,不必在控制器中先创建视图Action。
然后在视图中,就可以加载此部分视图了:
视图运行
Insus.NET较喜欢部分视图,因为你可以建很多方,但又不需在控制器创建相对的Action。