수안이의 컴퓨터 연구실

  • Mainpage
  • About Me
  • Tags
  • Metapage
  • Notice
  • Location
  • Keywords
  • Guestbook
  • Admin
  • Write an Article
  • Total | 1691119
  • Today | 425
  • Yesterday | 628

1 Articles, Search for 'XSL'

  1. 2007/04/29 Using ADO.NET, XML & XSL to generate HTML
Web/XML2007/04/29 19:32

Using ADO.NET, XML & XSL to generate HTML

Introduction

If your website has several pages with a similar layout it can become a pain to update using an HTML editor. What is needed is a way to automate the page generation from database tables, XML, & XSL files. By separating content and page layout for you website it is much easier to update repetitive content or easily change the style of every page.  Simple content can be maintained in a database.  Other content can be maintained in XML files.  More complex content can be generated using your favorite HTML editor without worrying about the extras that go on the top, bottom and sides of the page.  Using a program or script all the pieces can be put together to build a complete website.  A batch process can be used to generate the pages to be uploaded to a server where you don't have access to server side scripting or programming.  By keeping your content and style sheets modular you will be more prepare for the day when you can move your site to an ASP.NET server.  Modular content will be needed when you start thinking about supporting multiple browser types, such as mobile devices and voice.

The Database

To give an idea about the tools which can be used, lets automate the creation of a side-bar menu.  In this example the menu will be saved as a complete HTML file.  In a real application the resulting HTML or XHTML would be inserted into the page which is being built from multiple sources.  The advantage of using XHTML would be the ability to use all the XML tools in .NET for building your page.

Here is the database table which has the content for the menu.

사용자 삽입 이미지

Here is the code for reading the database table and converting it to HTML.

This code opens a connection to the database and reads the table into a DataSet.  The TableName and DateSetName are given names which will result in meaningful tags in the XML.  The DataSet is saved as XML using ds.WriteXml in case we want to take a look at it.  The DataSet is converted to an XmlDataDocument so that we can apply the transform to it.  The XSL stylesheet is loaded into the XslTransform object.  A StreamWriter is used by the XslTransform object to write the resulting HTML to a file.

The XML

Here is the XML generated by ds.WriteXml:


Here is the XSL used to transform the XML into HTML:



The HTML

Here is the resulting HTML:

The ADO.NET and XML support in the .NET framework is a powerful and easy to use combination.  These tools can be used for batch generation of web pages, or used live in ASP.NET.

"XML" 카테고리의 다른 글
  • XML Tutorials, References (0)2008/05/01
  • Processing XML with Java - Elliotte Rusty Harold (0)2008/03/23
  • Using ADO.NET, XML & XSL to generate HTML (0)2007/04/29
  • Microsoft.XMLHTTP (0)2007/04/12
  • 스타일시트(stylesheet)를 이용한 xml문서 표시 (0)2007/04/12
2007/04/29 19:32 2007/04/29 19:32
Posted by webdizen
Tags ADO.NET, HTML, XML, XSL
No Trackback No Comment

Trackback URL : http://www.webdizen.net/blog/trackback/2869

Leave your greetings.

[로그인][오픈아이디란?]

«Prev  1  Next»

RSS HanRSS
Blog Image
webdizen
이곳은 컴퓨터에 대해 연구하고, 공유하고, 소통하기 위한 연구실입니다. 개인적으로는 OLAP, Data Mining, Semantic Web, Data Modeling에 대해서 연구하고 있습니다.

Categories

전체 (3009)
Webdizen (141)
Life (6)
Diary (16)
Blog (9)
IDEA (2)
Travel (10)
Book (16)
Photo (7)
Movie (8)
Music (14)
Leisure Sports (10)
Funny (6)
Hardware (121)
Software (120)
Windows (5)
Unix & Linux (120)
Installation (5)
Kernel (10)
System (34)
Develop (22)
X-Window (0)
Applicaton (31)
Security (4)
Framework (2)
Hadoop (2)
Programming (804)
Algorithm & Data Structure (1)
Assembly (38)
UNIX/Linux C (95)
C++ (128)
STL (4)
Java (38)
Win32 API (92)
ATL/COM (44)
MFC (151)
.NET (26)
WCF/WPF (4)
C# (28)
Network Programming (17)
Database Programming (12)
OpenGL / DirectX (13)
Multimedia Programming (0)
Game Programming (21)
Parallel Distributed Progra... (0)
Reverse Engineering (0)
Debugging (9)
Python (1)
Ruby (1)
Ruby on Rails (1)
QT (4)
GTK (0)
JSP (0)
PHP (6)
ASP.NET (6)
ASP (2)
Development (28)
Useful Library (2)
Data Modeling (0)
Database (105)
Oracle (4)
MSSQL (41)
MySQL (2)
Data Warehouse (2)
Data Mining (4)
Network (66)
Web (79)
DHTML (4)
XHTML (1)
Javascript (1)
CSS (1)
AJAX (9)
XML (11)
Flex (1)
Silverlight (3)
Security (91)
DoS (1)
Kernel (10)
Scanning (3)
Sniffing (0)
Spoofing (4)
Overflow (28)
Web (11)
Shell (10)
Format String (14)
Window (2)
Embedded (70)
Multimedia (27)
Mobile (14)
Graphic (24)
Management (633)
Knowledge (581)
Hadoop (0)

Notice

  • 메타 블로그 사이트에 등록
  • 새해 맞이 블로그의 변화
  • 블로그 명칭 변경
  • 도메인(www.webdizen.net) 구...
  • TEXTCUBE 1.6.1로 업그레이드...

Tags

  • 에너지 버스
  • 패스포드
  • 마주앙 델리
  • Coding
  • Common Dialog
  • 구본관
  • 자석 윈도우
  • 웹 응용
  • 물리
  • XUL
  • Scan
  • random
  • 쓰레드
  • Calculator
  • Hardy Heron
  • 교육대학
  • Windows Presentation Foundation
  • 세션빈
  • 리눅스 사용자 계정
  • XPath

Recent Articles

  • 트위터(Twitter)의 시작!.
  • 청년 리더의 조건.
  • 애플의 타블렛 PC - 아이패드....
  • 미래의 인터페이스 - 육감 기....
  • 기초발성법 동영상 강좌.

Recent Comments

  • 관리자만 볼 수 있는 댓글입....
    비밀방문자 03/12
  • 상대방의 이야기를 열심히 경....
    DoNuts 03/03
  • Lots of students know techn....
    Bobbi35Shannon 02/25
  • 좋은글 잘 보고 갑니다..
    Und_hacker 01/08
  • 재밌네요~ 첫번째꺼는 요즘....
    Hybrid 2009

Recent Trackbacks

  • printf,scanf를 이용한 형식....
    yundream의 프로그래밍 이야기 03/10
  • 파일 열기/저장하기 CFileDialog.
    은마군의 나태블록 2009
  • World IT Show 2008.
    상우 :: Oranzie's BLOG 2008
  • cvs서버 설치하기.
    3인3색 2008
  • 속속 공개되는 Google Chart....
    PHP와 Web 2.0 2007

Archive

  • 2010/02 (1)
  • 2010/01 (6)
  • 2009/12 (5)
  • 2009/09 (3)
  • 2009/08 (1)

Calendar

«   2010/03   »
일 월 화 수 목 금 토
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

Bookmarks

    • Administration
      • IIS.NET
      • NTFAQ
      • OS의 모든 것
      • 리눅스포털
    • Database
      • SQL Server Central
      • SQL Team
    • Development
      • .NET Heaven
      • ASP Alliance
      • ASP.NET 2.0
      • Bullog.net
      • C# Corner
      • C++ (C PlusPlus.com)
      • C++ Reference
      • CodeGuru
      • CodePlex
      • DebugLab
      • Dev Articles
      • Devpia
      • DotNet Junkies
      • DotNet Zone
      • Driver Online
      • GOSU.NET
      • HOONS 닷넷
      • Joinc 팀블로그
      • KOSR
      • MSDN Home Page
      • OSR Online
      • Sky.ph - 개발자 커뮤니...
      • TAEYO.NET
      • The Code Project
      • WindowsClient.net
      • 김상욱의 개발자 Side
      • 조인시 위키
    • Human Networks
      • belief21c's e-space
      • I think I can
      • Invisible Rover's Blog :D
      • Rodman®
      • ■ Feel So Good~! ■
      • 까만 나비
      • 나를 가꾸는 시간.
      • 나만의 즐거움~~!
      • 단녕
      • 상우 :: Oranzie's BLOG
    • Information Technology
      • Microsoft TechNet
      • 지디넷코리아 - 글로벌...
    • Security
      • FoundStone
      • milw0rm
      • NewOrder
      • OpenRCE
      • Phrack.org
      • Reverse Engineering b1...
      • Reverse Engineering Team
      • RootKit
      • SecurityFocus
      • SecurityXploded by Nag...
      • Wow Hacker
      • Zone-H
Textcube
Louice Studio Inc.
Powered by Textcube. Original designed by Tistory.