`
李科笠
  • 浏览: 64541 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

ASP.NET生成HTML静态页面

阅读更多

此功能适用于后台数据库功能不强的web站点,即大部分文本不是存放在数据库的记录中,而是放在html文件或者xml文件中,仅仅把索引放到数据库中,如文章标题、类别、查询关键字等。这样适合于后台没有诸如MS Sql Server这样的数据库支持的Web站点。

适用于新闻发布系统,比如sina、163等都是采用动态生成html页面的。

适用于需动态定制页面的程序。比如论坛、聊天室等。可以加载定制好的html页面,来加强美观。

思路

1. 利用如Dw这样的工具生成html格式的模板,在需要添加格式的地方加入特殊标记(如$htmlformat$),动态生成文件时利用代码读取此模板,然后获得前台输入的内容,添加到此模板的标记位置中,生成新文件名后写入磁盘,写入后再向数据库中写入相关数据。

2. 使用后台代码硬编码Html文件,可以使用HtmlTextWriter类来写html文件。

优点

1. 可以建立非常复杂的页面,利用包含js文件的方法,在js文件内加入document.write()方法可以在所有页面内加入如页面头,广告等内容。

2. 静态html文件利用MS Windows2000的Index Server可以建立全文搜索引擎,利用asp.net可以以DataTable的方式得到搜索结果。而Win2000的Index服务无法查找xml文件的内容。如果包括了数据库搜索与Index索引双重查找,那么此搜索功能将非常强大。

3. 节省服务器的负荷,请求一个静态的html文件比一个aspx文件服务器资源节省许多。

缺点

思路二: 如果用硬编码的方式,工作量非常大,需要非常多的html代码。调试困难。而且使用硬编码生成的html样式无法修改,如果网站更换样式,那么必须得重新编码,给后期带来巨大的工作量。

因此这里采用的是第一种思路

示列代码

1.定义(template.htm)html模板页面

<html>

<head>

<title></title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

</head>

<body >

<table $htmlformat[0] height="100%" border="0" width="100%" cellpadding="10" cellspacing="0" bgcolor="#eeeeee" style="border:1px solid #000000">

<tr>

<td width="100%" valign="middle" align="left">

<span style="color: $htmlformat[1];font-size: $htmlformat[2]">$htmlformat[3]</span>

</td>

</tr>

</table>

</body>

</html>

2.asp.net代码:

//---------------------读html模板页面到stringbuilder对象里----

string[] format=new string[4];//定义和htmlyem标记数目一致的数组

StringBuilder htmltext=new StringBuilder();

try

{

using (StreamReader sr = new StreamReader("存放模板页面的路径和页面名"))

{

String line;

while ((line = sr.ReadLine()) != null)

{

htmltext.Append(line);

}

sr.Close();

}

}

catch

{

Response.Write("<Script>alert('读取文件错误')</Script>");

}

//---------------------给标记数组赋值------------

format[0]="background=\"bg.jpg\"";//背景图片

format[1]= "#990099";//字体颜色

format[2]="150px";//字体大小

format[3]= "<marquee>生成的模板html页面</marquee>";//文字说明

//----------替换htm里的标记为你想加的内容

for(int i=0;i<4;i++)

{

htmltext.Replace("$htmlformat["+i+"]",format[i]);

}

//----------生成htm文件------------------――

try

{

using(StreamWriter sw=new StreamWriter("存放路径和页面名",false,System.Text.Encoding.GetEncoding("GB2312")))

{

sw.WriteLine(htmltext);

sw.Flush();

sw.Close();

}

}

catch

{

Response.Write ("The file could not be wirte:");

}

小结

用此方法可以方便的生成html文件。程序使用了是循环替换,因此对需替换大量元素的模板速度非常快。

分享到:
评论

相关推荐

    asp.net生成html静态页面[示例](HtmlPage)

    通过ASP.NET生成静态HTML,可以确保网站内容对搜索引擎友好,提升排名。 7. **部署与配置** 配置IIS(Internet Information Services)以支持静态HTML页面的生成和发布。确保ASP.NET MVC模块正确安装,且网站配置...

    asp.net生成静态HTML页面

    ASP.NET生成静态HTML页面是一种常见的优化网站性能和SEO(搜索引擎优化)的技术。它涉及将原本由服务器动态生成的ASP.NET(通常使用C#语言编写)网页转换为纯HTML文件,这些文件可以直接由Web服务器提供,而无需每次...

    ASP.NET生成静态HTML页面

    ASP.NET生成静态HTML页面是一种常见的优化网站性能的技术。在ASP.NET框架中,动态网页通常由服务器端代码(如C#或VB.NET)处理并实时生成HTML响应,这在某些情况下可能会增加服务器负担和延迟。通过将动态内容转换为...

    asp.net生成的静态网站

    在`WebSite1`这个项目中,可能包含了ASP.NET生成静态网站的所有必要文件,包括`.cshtml`页面、控制器、样式表和脚本等。开发者可以通过编译和运行这个项目,观察生成的HTML文件,了解静态化的过程和结果。同时,可以...

    ASP.NET生成html静态页

    3. **路由配置**:为了使用户能够访问静态HTML页面,我们需要在Global.asax.cs文件中配置路由,确保请求被正确导向到静态HTML文件。可以使用RouteTable.Routes.MapPageRoute方法定义新的路由规则。 4. **缓存策略**...

    asp.net生成列表静态和新闻静态

    根据给定的文件信息,“asp.net生成列表静态和新闻静态”主要涉及如何使用ASP.NET来生成静态页面,特别是列表页面和新闻详情页面。接下来,我们将对这些内容进行详细的解释和分析。 #### 核心知识点一:动态生成...

    ASP.NET生成静态网页

    通过ASP.NET生成静态HTML,可以提高网站在搜索结果中的可见性。 6. **总结** ASP.NET生成静态网页是提高网站性能和SEO的有效策略。通过预编译和缓存技术,可以减少服务器负担,同时提供快速的用户体验。理解这一...

    asp.net生成静态页面源码例子打包下载

    在这个"asp.net生成静态页面源码例子打包下载"中,我们可以探讨一些核心的ASP.NET技术以及静态页面生成的相关知识点。 1. **ASP.NET Web Forms**: ASP.NET Web Forms是ASP.NET框架的一部分,它提供了一种基于控件...

    asp.net模板生成静态页面

    ASP.NET 模板生成静态页面是一种技术,它允许开发者将动态网站内容转化为静态HTML页面,以提高网站性能、搜索引擎优化(SEO)以及离线访问能力。对于初学者来说,这是一个非常实用的技术,因为它降低了服务器处理...

    ASP.NET生成静态页面

    ASP.NET生成静态页面是一种常见的网站优化技术,它能够提高网页加载速度,降低服务器负载,并对搜索引擎友好。在本文中,我们将深入探讨这个主题,包括如何实现静态页面生成、分页处理、常见问题以及代码优化。 ...

    ASP.NET生成静态页面实现方法

    ASP.NET生成静态页面是一种优化网站性能的技术,它可以减少服务器处理动态请求的负担,提高页面加载速度,特别是对于访问量大、内容相对稳定的网页。本文将详细介绍如何在ASP.NET环境中实现静态页面的生成。 首先,...

    ASP.NET生成静态页的三种方法

    本文将详细介绍三种常用的ASP.NET生成静态页面的方法。 #### 方法一:通过HTTP请求获取HTML内容并保存为静态页面 这种方法适用于将动态网页转换成静态页面的情况。主要思路是利用HTTP请求获取动态页面的HTML内容,...

    ASP.NET源码——asp.net生成静态页面的模板引擎.zip

    这个压缩包文件"ASP.NET源码——asp.net生成静态页面的模板引擎.zip"包含了一个名为"EFPlatform.TemplateEngine v1.0_aspnetms"的项目,它是一个用于ASP.NET平台的模板引擎,专门用于生成静态HTML页面。这种技术可以...

    asp.net生成静态页面

    这就是“ASP.NET生成静态页面”的概念。 在ASP.NET中生成静态页面主要涉及到以下几个关键知识点: 1. **预编译**:ASP.NET允许开发者在部署前预编译整个网站,这可以生成一个包含所有页面的DLL文件。虽然这不是...

    ASP.net快速生成静态页

    ASP.NET框架下实现快速生成静态页面的方法便成为了一项重要的技术。 #### 二、关键概念与原理 ##### 2.1 ASP.NET简介 ASP.NET是Microsoft推出的一种用于构建动态网页的应用程序框架,它基于.NET Framework,支持...

    asp.net生成静态页面的模板引擎

    这就是ASP.NET生成静态页面的目的所在。模板引擎在此过程中扮演了关键角色,它允许开发者定义页面布局和内容,并将其转换为静态文件。 模板引擎是一种工具,用于解析带有控制结构(如循环、条件语句)和动态内容的...

    ASP.NET动态生成静态页面技术

    ### ASP.NET动态生成静态页面技术 #### 概述 在Web开发中,为了提升网站的访问速度、降低服务器负载及提高用户体验,动态生成静态页面(Dynamic Generation of Static Pages)成为了一种常用的技术手段。本文将...

    Asp.net生成静态页面

    总结来说,ASP.NET生成静态页面是一个涉及多个层面的过程,包括选择合适的框架、视图引擎,使用缓存技术,编写自定义中间件或过滤器,以及利用第三方库等。这个过程可以显著提升网站的性能和SEO效果,但同时也需要...

    ASP.NET生成静态页面和分页

    ASP.NET是一种强大的Web应用程序开发框架,由..."ASP.NET生成静态页面和分页"可能是一个项目文件,包含了完整的分页和静态化实现。通过对这些源码的学习和分析,你可以深入理解并掌握上述知识点在实际开发中的应用。

Global site tag (gtag.js) - Google Analytics