惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Attack and Defense Labs
Attack and Defense Labs
The GitHub Blog
The GitHub Blog
C
Check Point Blog
博客园_首页
MongoDB | Blog
MongoDB | Blog
N
Netflix TechBlog - Medium
F
Full Disclosure
Microsoft Security Blog
Microsoft Security Blog
爱范儿
爱范儿
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
G
GRAHAM CLULEY
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Threat Research - Cisco Blogs
C
Cybersecurity and Infrastructure Security Agency CISA
V
Vulnerabilities – Threatpost
K
Kaspersky official blog
博客园 - 司徒正美
S
Schneier on Security
T
The Exploit Database - CXSecurity.com
Project Zero
Project Zero
云风的 BLOG
云风的 BLOG
Cisco Talos Blog
Cisco Talos Blog
Know Your Adversary
Know Your Adversary
雷峰网
雷峰网
V
V2EX - 技术
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Spread Privacy
Spread Privacy
罗磊的独立博客
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
S
Security Affairs
SecWiki News
SecWiki News
Schneier on Security
Schneier on Security
O
OpenAI News
Jina AI
Jina AI
PCI Perspectives
PCI Perspectives
Cyberwarzone
Cyberwarzone
Y
Y Combinator Blog
Apple Machine Learning Research
Apple Machine Learning Research
B
Blog RSS Feed
I
InfoQ
D
Docker
P
Palo Alto Networks Blog
Recorded Future
Recorded Future
M
MIT News - Artificial intelligence
博客园 - Franky
B
Blog
Scott Helme
Scott Helme
博客园 - 叶小钗
D
DataBreaches.Net

博客园 - myer

使用you-get下载youtube视频 找不到org.springframework.context.ConfigurableApplicationContext的类文件 Centos7安装mysql8 无法加载oramts.dll 反射应用中的同种类型转换错误 - myer - 博客园 在ASP.NET中实现Url Rewriting 正则表达式 c# 手机号码正则表达式 - myer jscalendar-1.0中文解决方法 GridView中嵌套GridView asp.net 小偷程序实现的原理和源码 - myer - 博客园 GridView 排序 开源软件FtpClient几个问题 CMM简介 C# ping命令的实现 - myer DIV模式窗口的实现 .net中序列化和反序列化 ASP.net 本地化和国际化 C#编码规范
aspx文件生产静态html文件
myer · 2007-06-28 · via 博客园 - myer

从网上看到一个aspx转换成html的类,如下
public class AspxToHtml
    {
        /// <summary> 
        /// Aspx文件url 
        /// </summary> 
        public string strUrl;
        /// <summary> 
        /// 生成html文件的保存路径 
        /// </summary> 
        public string strSavePath;
        /// <summary> 
        /// 生成html文件的文件名 
        /// </summary> 
        public string strSaveFile;
        public AspxToHtml()
        {
        }

        /// <summary> 
        /// 将strUrl放到strSavePath目录下,保存为strSaveFile 
        /// </summary> 
        /// <returns>是否成功</returns> 
        public bool 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("GB2312"));
                //新建一个文件Test.htm,文件格式为GB2312 

                sw.Write(strHTML.ToString());             //将strHTML中的字符写到Test.htm中 
                strHTML.Close();                          //关闭StringWriter 
                sw.Close();                                    //关闭StreamWriter 
                return true;
            }
            catch
            {
                return false;
            }
        }
        /// <summary> 
        /// 将Url放到Path目录下,保存为FileName 
        /// </summary> 
        /// <param name="Url">aspx页面url</param> 
        /// <param name="Path">生成html文件的保存路径</param> 
        /// <param name="FileName">生成html文件的文件名</param> 
        /// <returns></returns> 
        public bool ExecAspxToHtml(string Url, string Path, string FileName)
        {
            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(Path + FileName, false, System.Text.Encoding.GetEncoding("GB2312"));
                //新建一个文件Test.htm,文件格式为GB2312 
                sw.Write(strHTML.ToString());             //将strHTML中的字符写到Test.htm中 
                strHTML.Close();                          //关闭StringWriter 
                sw.Close();                                    //关闭StreamWriter 
                return true;
            }
            catch (Exception ex)
            {
                System.Console.WriteLine(ex.Message);
                return false;
            }
        }
    }

新建两个aspx页面:AspxToHtml.aspx和Test.aspx,
AspxToHtml.aspx.cs内容如下
AspxToHtml aspx = new AspxToHtml();

    protected void Page_Load(object sender, EventArgs e)
    {
        aspx.ExecAspxToHtml(@"Test.aspx", @"C:\", "test.html");
    }
这样每当页面加载的时候就把Test.aspx页面生产为Test.html,可能好多网站的新闻也是这样生产的吧。