• c# 生成静态页面


     /// <summary>
         /// AspxToHtml 的摘要说明。
         /// </summary>
         public class AspxToHtml
         {
             /// <summary>
             /// Aspx文件url
             /// </summary>
             public string strUrl;
             /// <summary>
             /// 生成html文件的保存路径
             /// </summary>
             public string strSavePath;
             /// <summary>
             /// 生成html文件的文件名
             /// </summary>
             public string strSaveFile;
    
             public AspxToHtml()
             {
                  //
                  // TODO: 在此处添加构造函数逻辑
                  //
             }
             /// <summary>
             /// 将strUrl放到strSavePath目录下,保存为strSaveFile
             /// </summary>
             /// <returns>是否成功</returns>
             public void ExecAspxToHtml()
             {
                  try
                  {
                       StringWriter strHTML = new StringWriter();
                       System.Web.UI.Page myPage = new Page();   //System.Web.UI.Page中有个Server对象,我们要利用一下它
                       myPage.Server.Execute(strUrl,strHTML);    //将asp_net.aspx将在客户段显示的html内容读到了strHTML中
                       StreamWriter sw = new StreamWriter(strSavePath+"/"+strSaveFile, false, System.Text.Encoding.GetEncoding("UTF-8"));
                      //新建一个文件Test.htm,文件格式为GB2312
                       sw.Write(strHTML.ToString());            
                      //将strHTML中的字符写到Test.htm中
                       strHTML.Close();                        
                      //关闭StringWriter 
                       sw.Close();                                    
                      //关闭StreamWriter 
                  }
                  catch(Exception err)
                  {
                      throw err;
                  }
             }
    
    页面代码:
    
     protected void Page_Load(object sender, EventArgs e)
            {
                scjtym.ServerClick += new EventHandler(scjtym_ServerClick);
            }
    
            void scjtym_ServerClick(object sender, EventArgs e)
            {
                try
                {
                    AspxToHtml a = new AspxToHtml();
                    a.strSaveFile = "index.html";
                    a.strSavePath = Request.PhysicalPath.Substring(0, Request.PhysicalPath.LastIndexOf("\"));
                    a.strUrl = "/index.aspx";
                    a.ExecAspxToHtml();
                    Response.Write("<script type='text/javascript'>alert('生成成功!');window.open('/', '_blank');</script>");
                }
                catch (Exception err)
                {
                    Response.Write("<script type='text/javascript'>alert('" + err.Message + "');</script>");
                }
                
            }
  • 相关阅读:
    MAC配置DNS服务器
    真机IOS8.3以上的文件夹共享
    appium + python的环境配置_windows
    python 的时间与日期
    sublimetext 2 编译文件带input时 提示 EOFError: EOF when reading a line
    cmd无法输入中文解决方案
    配置python学习环境遇到的问题:[Decode error
    monkey初接触
    Android logcat输出中文乱码
    运行 命令框不记录打过的命令,重启后CMD里面是空的.上次打过的命令消失了.
  • 原文地址:https://www.cnblogs.com/gs21Joan/p/3890039.html
Copyright © 2020-2023  润新知