当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET 生成静态页面 实现思路

ASP.NET
ASP.NET上传图片时 产生预览
动态改变asp.net网页的标题
一个ASP.NET中使用的MessageBox类
ASP.NET设计网络硬盘之两重要类
ASP.NET与MySQL数据库简明图示入门教程
ASP.NET中为DataGrid添加合计字段
利用ASP.NET的内置功能抵御Web攻击
ASP.NET+Web服务实现软件共享
ASP.NET设计网络硬盘之文件夹实现
在ASP.NET中使用SQL的IN操作
datagrid与DataSet结合使用中出现的索引问题
asp.net开发web项目-vss集成环境配置
ASPX保存远程图片到本地的两种方法的函数
ASP.NET设计网络硬盘之删除文件夹
开发ASP.NET下的MP3小偷程序
对“学号”、“身份证”的数字分析
Asp.net url分页的用户控件
ASP.NET 2.0中DataTable小兵变大将
将dataset以xml形式发给客户端下载
ASP.NET实现自适应图片大小的弹窗 窗口可任意编辑

ASP.NET 生成静态页面 实现思路


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 151 ::
收藏到网摘: n/a

网上的cms系统好多都是支持生成静态的,大家在使用过程中,也肯定遇到了很多的问题,下面就是一些实现的原理,其实 asp,php,asp.net的原理都是差不多的。 1.首页选择HTML原型网页
然后再该HTML网页添加一些自认为特别的标记,已便到时候静态化的时候系统能更精确的进行操作!
2.获取HTML网页代码
我选择的是通过FileUpload控件进行获取静态度页面模型,进行保存!
复制代码 代码如下:

if (FileUpload1.PostedFile.FileName == "")
{
Response.Write("<script>alert('请确定您是否选择了网页')</script>");
return;
}
if ((FileUpload1.FileName.LastIndexOf(".") != "htm") || (FileUpload1.FileName.LastIndexOf(".") != "html"))
{
Response.Write("<script>alert('请确定您是否选择了网页')</script>");
return;
}
System.Text.Encoding ec = System.Text.Encoding.GetEncoding("gb2312");//指定编码格式
System.IO.StreamReader sr = new System.IO.StreamReader(FileUpload1.PostedFile.FileName, ec);
string strHTML =Convert.ToString(sr.ReadToEnd());
strHTML=FormatStr(strHTML); //格式化HTML代码后,将此strHTML插入数据库 已便使用时候提取!
sr.Close();
//贴上格式化HTML方法代码
/// <summary>
/// 格式 化 HTML
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
private string FormatStr(string str)
{
string strContent = str.Replace("<", "<");
strContent = strContent.Replace(">", ">");
//strContent = strContent.Replace(chr(13),"<br>");
strContent = strContent.Replace("\r", "<br>");
strContent = strContent.Replace(" ", " ");
strContent = strContent.Replace("[isOK]", "<img src=");
strContent = strContent.Replace("[b]", "<b>");
strContent = strContent.Replace("[red]", "<font color=CC0000>");
strContent = strContent.Replace("[big]", "<font size=7>");
strContent = strContent.Replace("[/isOK]", "></img>");
strContent = strContent.Replace("[/b]", "</b>");
strContent = strContent.Replace("[/red]", "</font>");
strContent = strContent.Replace("[/big]", "</font>");
return strContent;
}

3.提取先前保存过的HTML页面模型
然后通过 string.Replace(char oldstring,char newstring );
对模型页面中预先 设置好的特别标记进行替换成我们需要动态更改的!
4.对动态更新后的HTML代码进行文件进行保存 平把路径存如数据库方便调用