宝哥软件园

ASP.NET静态页面生成方法

编辑:宝哥软件园 来源:互联网 时间:2021-09-09

本文描述了ASP.NET的静态页面生成方法。分享给大家参考。具体实现方法如下:

一、问题:

由于业务需要,我们必须根据模板页面生成静态页面,所以我们思考并写了一些想法供将来使用。

二、解决方案:

匹配和替换是静态页面生成中使用最多的方法。首先,阅读模板页面的html内容,然后匹配自己定义的标签。比如我想把自己定义的title标签改成读取数据库的title内容,可以直接读取数据库的title,然后直接替换,然后生成html文件。

具体代码如下:复制代码如下:///summary///解析模板html中匹配的标签。进行替换(它只能用于暂时没有分页的页面)/////summary//param name=' html ' html/param///returns被替换的html/returns public static string return html(string html){ string new html=html;Newhtml=newhtml。替换(“# title #”、“这是标题替换”);//替换标题//newhtml=newhtml。替换(“# content #”、“这是内容替换”);//替换标题new html=create list(new html);返回newhtml}

///summary///read HTML文件/////summary//param name=' temp ' HTML文件的相对路径/param///returns HTML/returns public static string read HTML file(string temp){ stream reader Sr=null;字符串str=请尝试{ Sr=new stream reader(HttpContext。Current.Server.MapPath(临时),代码);str=Sr . ReadToEnd();//读取文件} catch(exception exp){ httpcontext。current . response . write(exp . message);HttpContext。当前。响应。结束();}最后{ Sr . Dispose();关闭();

}返回字符串;}

///summary///生成html文件/////summary///param name=' film name '文件名(带相对路径,例如:/a . html)/param///param name=' html ' html内容(整体)/param public static void write html(string film name,string html) {system。text.encoding code=system。text . encoding . getencoding(' utf-8 ');字符串htmlfilename=HttpContext。current . server . mappath(film name);字符串str=htmlStreamWriter sw=null//写入文件try { SW=new stream writer(html filename,false,code);西南航空。write(str);西南航空。flush();}

catch (Exception ex) {HttpContext。当前。响应。写入(例如。消息);HttpContext。当前。响应。结束();}

最后{sw。close();}}

从代码中可以看出,生成静态页面其实就是这样一个过程:读取模板页面的源代码——匹配并替换实际内容的自定义标签——最后生成一个新的html文件。这是思维方式,以前从来没有做过,太复杂了。现在,在积极写作时,找出答案并不太复杂。

最后,如果有一些页面生成分页列表,也就是循环生成列表页面,那么生成的静态页面文件就和页面一样多。有不懂的可以回答问题。我会尽力回答那些我理解的。当然,不懂也没办法。毕竟刚接触这个功能,现在暂时做了一个最不起眼的样子。附图上来给你开玩笑:

希望这篇文章对大家的ASP.NET节目设计有所帮助。

更多资讯
游戏推荐
更多+