이 기능은 백엔드 데이터베이스 기능이 약한 웹 사이트에 적합합니다. 즉, 대부분의 텍스트가 데이터베이스 레코드에 저장되지 않고 html 파일이나 xml 파일에 저장됩니다. 기사 제목, 카테고리, 검색어 키워드 등 이는 MS SQL Server와 같이 백그라운드에서 데이터베이스를 지원하지 않는 웹 사이트에 적합합니다.
동적으로 생성된 HTML 페이지를 사용하는 sina, 163 등과 같은 보도 자료 시스템에 적합합니다.
페이지를 동적으로 사용자 정의해야 하는 프로그램에 적합합니다. 포럼, 채팅방 등 사용자 정의된 HTML 페이지를 로드하여 미학을 향상시킬 수 있습니다.
아이디어
1. Dw-Mx와 같은 도구를 사용하여 html 형식의 템플릿을 생성하고, 형식을 추가해야 하는 곳에 특수 태그(예: $htmlformat$)를 추가하고 코드를 사용하여 이 템플릿을 읽습니다. 그런 다음 프런트 데스크에서 입력한 콘텐츠를 가져와 이 템플릿의 표시된 위치에 추가하고 새 파일 이름을 생성하여 디스크에 쓴 다음 해당 데이터를 데이터베이스에 씁니다.
2. 배경 코드를 사용하여 Html 파일을 하드코딩합니다. HtmlTextWriter 클래스를 사용하여 html 파일을 작성할 수 있습니다.
장점
1. js 파일을 포함시키고, js 파일에 document.write() 메소드를 추가하여 페이지 헤더, 광고 등의 내용을 모두 추가하는 방식으로 매우 복잡한 페이지를 생성할 수 있습니다. 페이지.
2. 정적 html 파일은 MS Windows2000의 Index Server를 사용하여 전체 텍스트 검색 엔진을 구축하고 asp.net을 사용하여 DataTable 형식의 검색 결과를 얻을 수 있습니다. Win2000의 인덱스 서비스가 xml 파일의 내용을 찾을 수 없습니다. 데이터베이스 검색과 Index 인덱스 이중 검색을 포함한다면 이 검색 기능은 매우 강력할 것입니다.
3. 서버 부하를 저장합니다. 정적 html 파일을 요청하면 aspx 파일보다 훨씬 더 많은 서버 리소스가 절약됩니다.
단점
아이디어 2: 하드 코딩을 사용하면 작업량이 매우 많고 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 페이지를 동적으로 생성하고 관련 기사를 공유하는 방법에 대한 자세한 내용을 보려면 PHP 중국어 웹사이트에 주목하세요!