提供.NET文章,资料,电子书,开发工具,专注于.NET技术推广  设为首页   加入收藏 
 登录   注册 
当前位置:首页 >> MVC开发

Asp.Net MVC 把PartialView、View转换成HTML字符串

出处: csharpwin | 2012-01-17 12:07:00 | 阅读:31 次
本文介绍Asp.Net MVC 把PartialView、View转换成HTML字符串,并提供简单的示例代码供参考。
在开发中有时要在后台获得某个View 或者 PartialView 生成的字符串,只要你熟悉Asp.Net MVC  生命周期就能理解和敲出下面的代码。没什么高深的,直接上代码: 1、输出View HTML 字符串:         /// <summary>
        
/// 描述:输出View HTML 字符串
        
/// </summary>
        
/// <param name="controller"></param>
        
/// <param name="viewName">视图文件名</param>
        
/// <param name="masterName">母板页文件名</param>
        
/// <returns></returns>
        protected static string RenderViewToString(Controller controller, string viewName, string masterName)
        {
            IView view = ViewEngines.Engines.FindView(controller.ControllerContext, viewName, masterName).View;
            using (StringWriter writer = new StringWriter())
            {
                ViewContext viewContext = new ViewContext(controller.ControllerContext, view, controller.ViewData, controller.TempData, writer);
                viewContext.View.Render(viewContext, writer);
                return writer.ToString();
            }
        }  2、输出PartialView HTML 字符串:
          /// <summary>
        
/// 描述:输出PartialView HTML 字符串
        
/// </summary>
        
/// <param name="controller"></param>
        
/// <param name="partialViewName">部分视图文件名</param>
        
/// <returns></returns>
        protected static string RenderPartialViewToString(Controller controller, string partialViewName)
        {
            IView view = ViewEngines.Engines.FindPartialView(controller.ControllerContext, partialViewName).View;
            using (StringWriter writer = new StringWriter())
            {
                ViewContext viewContext = new ViewContext(controller.ControllerContext, view, controller.ViewData, controller.TempData, writer);
                viewContext.View.Render(viewContext, writer);
                return writer.ToString();
            }
        } 
分享到:
相关文章:
  文章评论 (共有条评论)
发表您的评论(文明评论 违者屏蔽 违规举报 请勿争吵)
  • 本站提供.NET相关的文章,资源,代码,软件等...
  • 测试期如有问题,请联系站长 QQ:61343211
  • 其中部分来源于网络,如果您对本站转载了您的作品表示不满意
  • 请联系我们,我们将在3个工作日之内删除!
  • 本站持续修改完善中,如遇不便还请谅解....
  • © 2010-2011 www.aspx2.com .NET程序员
  •  
  • 关注我们: