• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ASP.NET页面生成静态HTML页面

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
方法A:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.IO;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write(AspxToHtml("./admin/Default2.aspx",Server.MapPath("./index.html")));
    }


    /// <summary>
    /// 将Url放到Path目录下,保存为FileName
    /// </summary>
    /// <param name="Url">aspx页面url</param>
    /// <param name="PathFileName">保存路径和生成html文件名</param>
    /// <returns></returns>
    public bool AspxToHtml(string Url, string PathFileName)
    {
        try
        {
            StringWriter strHTML = new StringWriter();
            System.Web.UI.Page myPage = new Page();//System.Web.UI.Page中有个Server对象,我们要利用一下它
            myPage.Server.Execute(Url, strHTML);//将asp_net.aspx将在客户段显示的html内容读到了strHTML中
            //StreamWriter sw = new StreamWriter(PathFileName, false, System.Text.Encoding.GetEncoding("GB2312"));
            StreamWriter sw = new StreamWriter(PathFileName, false, System.Text.Encoding.Default);
            sw.Write(strHTML.ToString());//将strHTML中的字符写到指定的文件中
            
            strHTML.Close();
            strHTML.Dispose();
            sw.Close();
            sw.Dispose();
            return true;
        }
        catch
        {
            return false;
        }
    }




}





方法B:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Label1.Text = DateTime.Now.ToString();
    }
    protected override void Render(HtmlTextWriter writer)
    {
        System.IO.StringWriter html = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter tw = new System.Web.UI.HtmlTextWriter(html);
        base.Render(tw);
        System.IO.StreamWriter sw;
        sw = new System.IO.StreamWriter(Server.MapPath("Default.htm"), false, System.Text.Encoding.Default);
        sw.Write(html.ToString());
        sw.Close();
        tw.Close();
        Response.Write(html.ToString());
    }  

}

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap