iT邦幫忙

DAY 17
2

從零開始開發Web應用程式系列 第 17

Web應用程式開發-XML

  • 分享至 

  • xImage
  •  

XML延伸標記式語言,在網站的開發上應用得比較少,而在開發系統時,遇到的機會非常多,當然並不僅止於在WEB上,WINDOWS AP也是可以使用,主要是做資料的傳遞和交換,前兩個單元說的WEB SERVICE和WCF也就是標準的XML資料交換,由於XML+HTTP走的是80PORT,所以可以穿越防火牆,XML是一種通用的標準的資料格式,在很多產業尤其是金融業的系統,是一定會使用到的技術

下列簡單介紹XML的特性
1.well-formed
*如果有XML文件宣告指令,必須位於XML文件的第一列。
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="big5"?>
*XML文件中只能有一個根標籤。
*開始的標籤與結束的標籤缺一不可。
*空的標籤(單獨一個)必需要有『/』符號。
*所有的標籤必須滿足巢狀的排列。
*英文字母的大小寫是有差異的。
*屬性值的設定必需被『"』或『'』包圍起來。

2.validate 文件類型定義 (DTD,Document Type Definition)
Product.dtd
<?xml version='1.0' encoding='utf-8'?>
<!ELEMENT Product (ProductName)>
<!ATTLIST Product ProductID CDATA #REQUIRED>
<!ELEMENT ProductName (#PCDATA)>

Product.xml
<?xml version='1.0' encoding='utf-8'?>

<Product ProductID="1">
<ProductName>XXX</ProductName>
</Product>

他必須是正確的格式和合於驗證規則的,所謂驗證規則是指*.dtd,用以驗證XML的格式,這不一定是必要的,但良好的格式,是一定要的,否則就不是標準的XML文件,檢查是否為格式正確的XML 也相當容易,止要用IE把文件打開,出現正常的畫面,表示就是格式正確的

在.NET中處理XML 主要是使用using System.Xml;或是新的using System.Linq.Xml
如建立一份xml
XmlDocument doc = new XmlDocument();
XmlDeclaration xd = doc.CreateXmlDeclaration("1.0", "utf-8", "");
doc.AppendChild(xd);

XmlElement xeBooks = doc.CreateElement("Books");
doc.AppendChild(xeBooks);
doc.Save(...);

主要是階層式的觀念,和html有點像,最後要說明的是xml是沒有樣式的,主要就是資料的格式,若要顯示xml樣式,可用擴展樣式表轉換語言(Extensible Stylesheet Language Transformations,簡稱XSLT)
這是無論用任何開發語言都會遇到的部分,因此也是開發web應用程式時,必須要學習的項目之一.


上一篇
Web應用程式開發-WCF
下一篇
Web應用程式開發-建立XML
系列文
從零開始開發Web應用程式30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
ezpos
iT邦新手 5 級 ‧ 2011-10-15 13:14:20

實際應用上.XML檔案比其他資料庫檔案都來的大些又速度慢.在開發系統時.1MB常會發生轉入XML道系統時特別久.我建議使用ACCESS/DBF的檔案.

markshu iT邦好手 1 級 ‧ 2011-10-15 21:37:48 檢舉

XML並非是拿來當儲存機制,也和ACCESS/DBF的檔案無從比較,根本是不同的應用和機制,把資料存在XML 就和存在TXT一樣,當然沒效率,一般商業性統也不會用ACCESS單機板的資料庫,並不適合多人同時存取,至少也是SQL SERVER或更大型的ORACLE
內容所述不是要用XML來當儲存體,是以XML來做資料交換或交易的格式標準,一筆交易記錄也不會大到幾M,也不可能把系統流程和交易格式設計成那樣,他是用來做資料的交易和傳遞,不是要去當儲存體

我要留言

立即登入留言