2015-06-05 44 views
0

我相信我們會創建XML的Schema來定義XML元素及其結構。我想,在我們創建XML文件之前,我們必須定義XSD。換句話說,xml沒有其xsd文件是沒有意義的。定義不包含Schema的XML文件

今天我運行此代碼,

XmlWriter XmlWriter = XmlWriter.Create("Test.xml"); 

      XmlWriter.WriteStartDocument(); 

      XmlWriter.WriteStartElement("Users"); 
      XmlWriter.WriteStartElement("User"); 
      XmlWriter.WriteStartAttribute("Salman", "24"); 

      XmlWriter.WriteString("Salman"); 

      XmlWriter.WriteEndElement(); 
      XmlWriter.WriteEndDocument(); 
      XmlWriter.Close(); 

當我發現我的輸出,根本沒有什麼XSD文件。只有Test.xml。 所以我的問題是:

XSD文件的確切作用是什麼?

如果我是對的,爲什麼C#不生成輸出?

回答

3

XSD用於驗證XML文件,但是可選且不是必需的。如果您正在從同一個應用程序進行編寫/讀取,並且您控制對具有錯誤/異常處理功能的XML文件的所有訪問權限,以防事件無法正常工作,則不需要XSD。

當在應用程序之間傳遞數據時,XSD充當合同,確保雙方理解並同意傳遞的XML文件的格式。