出处:http://www.dedecms.com/web-art/Asp_Netjiaocheng/20050601/21616.html
下面的类可以实现将ASP.NET的Control(包括aspx页面)转换成String字符串,可以用于:
- 用邮件发送ASP.NET的内容
- 用XSLT转换页面的输出
- ASPX页面的全局字符串的使用
C#代码
using System;
using System.IO;
using System.Text;
using System.Web;
using System.Web.UI;
public class Render
{
public static string RenderControl(System.Web.UI.Control control)
{
StringBuilder result = new StringBuilder(1024);
control.RenderControl(new HtmlTextWriter(new StringWriter(result)));
return result.ToString();
}
public static string RenderControl(System.Web.UI.TemplateControl control)
{
StringBuilder result = new StringBuilder(1024);
control.RenderControl(new HtmlTextWriter(new StringWriter(result)));
return result.ToString();
}
public static string RenderPage(string pageLocation)
{
System.Web.HttpContext context = System.Web.HttpContext.Current;
StringBuilder result = new StringBuilder(1024);
context.Server.Execute(pageLocation,
new HtmlTextWriter(new StringWriter(result)));
return result.ToString();
}
}
VB.NET代码
Imports System Imports System.IO Imports System.Text Imports System.Web Imports System.Web.UI Public Class Render Public Shared Function RenderControl(ByVal control As System.Web.UI.Control)_ As String Dim result As StringBuilder = New StringBuilder(1024) control.RenderControl(New HtmlTextWriter(New StringWriter(result))) Return result.ToString() End Function Public Shared Function RenderControl(ByVal control As System.Web.UI.TemplateControl)_ As String Dim result As StringBuilder = New StringBuilder(1024) control.RenderControl(New HtmlTextWriter(New StringWriter(result))) Return result.ToString() End Function Public Shared Function RenderPage(ByVal pageLocation As String) As String Dim context As System.Web.HttpContext = System.Web.HttpContext.Current Dim result As StringBuilder = New StringBuilder(1024) context.Server.Execute(pageLocation, _ New HtmlTextWriter(New StringWriter(result))) Return result.ToString() End Function End Class
本文介绍了一种将ASP.NET的Control(包括aspx页面)转换为String的方法,可用于邮件发送内容、XSLT转换及全局字符串使用等场景。提供C#与VB.NET两种语言的实现。
419

被折叠的 条评论
为什么被折叠?



