由于这段时间比较轻松,于是想到很多的企业网站,新闻网站需要将页面静态化,于是写了个封装类来实现静态文件的生成,思路比较简单,但未完善,网友可根据自己的思路将此类扩展,运用了简单工厂模式,先来看看静态类的父类:StaticBase(抽象类)
public void Dispose()
{
sw.Dispose();
sr.Dispose();
}
#endregion
}
#region 对应的页面名称
/// <summary>
/// 对应的页面名称
/// </summary>
public enum FlagsFileName : byte
{
/// <summary>
/// 新闻
/// </summary>
[Description("新闻")]
News = 0,
/// <summary>
/// 头部
/// </summary>
[Description("头部")]
head=1,
/// <summary>
/// 脚部
/// </summary>
[Description("脚部")]
foot=2,
}
</div>
最后的一个枚举用于定义不同位置或不同类别的静态页所对应的子类,接下来看看其中一个子类的实现(该子类是用于所有单页,如数据库中有100条新闻记录,那相应的生成100个新闻html页面,格式用模板定义的格式确定)
首先模板文件时静态的html页面,其中所有的需要从数据库中替换的字段用一对$包含,如数据库中的新闻标题字段为titles,则模板页中相应的标题位置用$titles$表示,页面如下
$foot$
<!--ft end-->
</b