>  기사  >  백엔드 개발  >  ASP.NET 기술을 사용하여 HTML 페이지를 동적으로 생성합니다.

ASP.NET 기술을 사용하여 HTML 페이지를 동적으로 생성합니다.

巴扎黑
巴扎黑원래의
2017-05-22 23:01:441469검색

아이디어
1. Dw-Mx와 같은 도구를 사용하여 html 형식의 템플릿을 생성하고 서식을 추가해야 하는 곳에 특수 태그(예: $htmlformat$)를 추가한 다음 동적으로 생성 파일을 사용할 때 코드를 사용하여 이 템플릿을 읽은 다음 포그라운드에서 입력한 내용을 가져와 이 템플릿의 표시된 위치에 추가하고 새 파일 이름을 생성하여 디스크에 쓴 다음 쓰기 후에 관련 데이터를 데이터베이스에 씁니다.

 2. Html 파일을 하드코딩하려면 배경 코드를 사용하세요. HtmlTextWriter 클래스를 사용하면 html 파일을 작성할 수 있습니다.

장점

 1. js 파일을 포함하여 매우 복잡한 페이지를 생성할 수 있으며 document.write(( ) 메소드를 추가하면 다음과 같은 내용을 추가할 수 있습니다. 페이지 헤더, 광고 등을 모든 페이지에 표시합니다.

 2. 정적 html 파일은 MS Windows2000의 Index Server를 사용하여 전체 텍스트 검색 엔진을 구축할 수 있으며, asp.net을 사용하여 DataTable 형식의 검색 결과를 얻을 수 있습니다. Win2000의 인덱스 서비스가 xml 파일의 내용을 찾을 수 없습니다. 데이터베이스 검색과 Index 인덱스 이중 검색을 포함한다면 이 검색 기능은 매우 강력할 것입니다.

 3. 서버 부하를 절약하세요. 정적 html 파일을 요청하면 aspx 파일보다 훨씬 더 많은 서버 리소스가 절약됩니다.

단점

아이디어 2: 하드 코딩을 사용하면 작업 부하가 매우 크고 HTML 코드가 많이 필요합니다. 디버깅이 어렵습니다. 또한, 하드코딩을 통해 생성된 HTML 스타일은 수정할 수 없으며, 웹사이트에서 스타일을 변경하면 다시 코딩해야 하므로 이후 단계에서 엄청난 작업량이 발생하게 됩니다.

따라서 여기서 첫 번째 아이디어가 채택되었습니다.

쇼 코드

1. 정의(템플릿 .htm) html 템플릿 페이지

<html> 
<head> 
<title>www.knowsky.com</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(&#39;读取文件错误&#39;)</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 파일을 생성할 수 있습니다. 이 프로그램은 루프 교체를 사용하므로 많은 수의 요소를 교체해야 하는 템플릿의 경우 매우 빠릅니다.

[관련 권장 사항]

1. HTML 양식을 동적으로 생성하는 asp.net 메서드의 코드 예

2. Asp.net에서 HTML 페이지를 동적으로 생성하는 방법 공유

위 내용은 ASP.NET 기술을 사용하여 HTML 페이지를 동적으로 생성합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.