aspx网页以HTML形式存储的几个方法

网页

第一种是模版替换:
环境:Microsoft .NET Framework SDK v1.1
OS:Windows Server 2003 中文版
ASP.Net生成静态HTML页
在Asp中实现的生成静态页用到的FileSystemObject对象!
在.Net中涉及此类操作的是System.IO
以下是程序代码 注:此代码非原创!参考别人代码

//生成HTML页
 public static bool WriteFile(string strText,string strContent,string strAuthor)
 {
 string path = HttpContext.Current.Server.MapPath("/news/");
 Encoding code = Encoding.GetEncoding("gb2312");
 // 读取模板文件
 string temp = HttpContext.Current.Server.MapPath("/news/text.html");
 StreamReader sr=null;
 StreamWriter sw=null;
 string str="";
 try
 {
 sr = new StreamReader(temp, code);
 str = sr.ReadToEnd(); // 读取文件
 }
 catch(Exception exp)
 {
 HttpContext.Current.Response.Write(exp.Message);
 HttpContext.Current.Response.End();
 sr.Close();
 }
string htmlfilename=DateTime.Now.ToString("yyyyMMddHHmmss")+".html";
 // 替换内容
 // 这时,模板文件已经读入到名称为str的变量中了
 str =str.Replace("ShowArticle",strText); //模板页中的ShowArticle
 str = str.Replace("biaoti",strText);
 str = str.Replace("content",strContent);
 str = str.Replace("author",strAuthor);
 // 写文件
 try
 {
 sw = new StreamWriter(path + htmlfilename , false, code);
 sw.Write(str);
 sw.Flush();
 }
 catch(Exception ex)
 {
 HttpContext.Current.Response.Write(ex.Message);
 HttpContext.Current.Response.End();
 }
 finally
 {
 sw.Close();
 }
 return true;

此函数放在Conn.CS基类中了

在添加新闻的代码中引用 注:工程名为Hover

 if(Hover.Conn.WriteFilethis.Title.Text.ToString),this.Content.Text.ToString),this.Author.Text.ToString)))
 {
 Response.Write("添加成功");
 }
 else
 {
 Response.Write("生成HTML出错!");
 }

模板页Text.html代码

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
 <title>ShowArticle</title>
 <body>
biaoti
<br>
content<br>
author
</body>
</HTML>
biaoti
<br>
content<br>
author
</body>
</HTML>

  提示添加成功后会出以当前时间为文件名的html文件!上面只是把传递过来的几个参数直接写入了HTML文件中,在实际应用中需要先添加数据库,然后再写入HTML文件.
第二种:
WebRequest访问aspx页面,然后获取Response流,得到的就是html

private void button1_Click(object sender, System.EventArgs e)
{
  textBox1.Text=this.GetUrlValue("http://YourUrl");
}
//使用HttpWebRequest获得URL的返回值
public string  GetUrlValue(string url)
{
System.Net.WebRequest       HttpWebRequest=System.Net.WebRequest.Create(url);
System.Net.WebResponse      HttpWebResponse =HttpWebRequest.GetResponse();
System.IO.StreamReader sr=new System.IO.StreamReader(HttpWebResponse.GetResponseStream(), System.Text.Encoding.GetEncoding("GB2312"));
            return sr.ReadToEnd();
}

时间: 2024-11-08 17:15:32

aspx网页以HTML形式存储的几个方法的相关文章

MVC流形式存储图片读取问题!

问题描述 例如:用户信息,有一个头像,在数据库是流的形式存储,其他一些字段.我现在的做法是,读取成model,然后绑定页面.头像再做一次请求,返回MVC里的File显示.但是图片一多,显示起来就很慢.我有两个想法:1,用辅助方法,但是怎么都想不出怎么返回.2,把图片存储成文件,但是第二次打开页面依然要重新存储.还是很消耗性能,我在想能不能做个图片对比,如果图片相同,不再存储.但是图片对比好像更麻烦.有没有什么方法提高效率! 解决方案 解决方案二:asp.net默认不支持http304状态机制,因

ASP.NET技巧:开发时复制aspx网页的方法

asp.net|技巧|网页 简单的copy /paste    *.aspx网页,所使用的是同一个CodeBehind  ,这往往不是我们所想要的!!! 我们一般都希望使这两个网页具有各自的  *.cs文件. 步骤: ①新建一个WebForm. ②把源和目标网页都切换到HTML设计页面,进行HTML代码整个替换copy  关键:[第一行黄色背景的代码不要拷贝和替换] ③把源和目标网页的*.cs代码全部替换, 关键:[要把拷贝后的类名改为你新建的WebForm的名称]

论IP地址在数据库中应该用何种形式存储

在看公司项目代码时,有涉及到ip地址存储, 使用的是varbinary(4),但没有文档说明 这引发我的思考--缘起   当设计一个数据表时,考虑使用何种列的数据类型对性能有比较大的影响,如存储空间.查询开销等.甚至还影响到一些操作,如ip地址以字符串的形式存储在数据库中,就不可以直接比较大小.还有一点需要考虑,那就是可读性!数据虽然是存储在数据库中,但也要考虑到可读性问题. 本文要探讨的是"IP地址在数据库中,应该使用何种形式存储?",文章将以实验为基础介绍使用何种形式比较适合. 1

图片-ionic的九宫格,在pc端可以显示九宫格,以移动端网页版的形式浏览无法显示

问题描述 ionic的九宫格,在pc端可以显示九宫格,以移动端网页版的形式浏览无法显示 ionic的九宫格,在pc端可以显示九宫格,以移动端网页版的形式浏览无法显示 有问了别人说需要打包才行,但我的项目不是打包的,是直接调取界面的.有人知道哪里有问题吗?我也设置了flex-wrap:wrap. 解决方案 https://segmentfault.com/q/1010000004704903

空页面-aspx网页显示白页面,源文件没有内容

问题描述 aspx网页显示白页面,源文件没有内容 有一个项目的aspx页面 VS F5运行或者在IIS中打开,界面空白没有一个字符,浏览器中查看源文件也是没有一个标签. VS调试时在PageLode中能够全部走完,不报错.但是就是不显示. 在cs文件中使用Response.Write();写数据,界面倒是可以显示出来. 搞了好久,各位大牛! 江湖救急啊!!! 解决方案 看下你的页面顶部的codehind代码是不是被删除了. 再创建一个页面,运行,在浏览器中键入地址,看看是否可以 解决方案二: 代

如何在aspx网页加载好后自动执行一段代码?

问题描述 如何在aspx网页加载好后自动执行一段代码? 我想在我的网页加载好后,自动执行一段代码,是根据登录的用户,来设置元素的属性,需要aspx先把页面加载好后再执行,How to do? 解决方案 window.onload=function(){ alert('window ready'); //your code.... }</script>

aspx网页提交数据到SQL server数据库执行存储程序超时

问题描述 aspx网页提交数据到SQL server数据库执行存储程序超时 网页提交数据到数据库,用giridview显示数据,查询的数据源数据库特别大,查询时间较长,最后反馈页面是服务超时,怎么解决? protected void Button1_Click(object sender EventArgs e) { string connstr = ConfigurationManager.ConnectionStrings[""connstr""].Connec

我的aspx网页在vs2005调试运行不显示验证码图片和javascript效果呢?

问题描述 我的aspx网页在vs2005调试运行不显示验证码图片和javascript效果呢?是不是环境染毒了?是iis出现问题还是vs2005出现问题还是什么原因呢?前几天还好好的! 解决方案 解决方案二:是不是新加js或者css影响了

[网站开发]菜鸟求问,请问网页一般是怎么存储的???

问题描述 [网站开发]请问网页一般是怎么存储的???我看到新浪每天都会产生许多新的网页,像下面这个链接http://news.sina.com.cn/c/2011-03-16/002022121008.shtml.这些网页的内容是每一次我点击链接的时候都从数据库拼凑出信息组合而成的网页吗?还是已经声称好了的,然后存储在某个地方??是存在数据库还是作为普通文件存在硬盘???请有经验者给出解答! 解决方案 解决方案二:都是已经生成好的静态页面解决方案三:右键查看源码能看见的是静态不能的是读的数据解决