2015-01-15 46 views
0
  xtw.WriteStartElement("cXML");        
      xtw.WriteAttributeString("payloadID", payloadidstr); 
      xtw.WriteAttributeString("timestamp", utctime()); 
      xtw.WriteAttributeString("version", "1.2.024"); 

上面的代碼正常工作以生成xml屬性。如果在記事本中打開xml文件顯示以下正確的字符串。C#多個writeattributestring到xml沒有按正確順序顯示

cXML的payloadID = 「[email protected]」 時間戳= 「2014-02-14T12:13:39-08:00」 版本= 「1.2.024」

但是當Open XML文件任何瀏覽器的屬性命令都會這樣顯示。

cXML的版本= 「1.2.024」 時間戳= 「2015-01-15T16:54:48-08:00」 payloadID = 「[email protected]

有人可以讓我知道爲什麼瀏覽器沒有以正確的順序顯示或者如何在一個元素下顯示多個字符串。

+0

也許是瀏覽器做一些架構驗證和報告的屬性回到他們預期的順序。 – Andreas

+1

根據規範:'起始標籤或空元素標籤中屬性規範的順序不重要http://www.w3.org/TR/REC-xml/#sec-starttags – Andreas

回答

2

XML沒有定義屬性的順序,所以沒有「正確」的順序 - 順從的讀者/作者可以自由訂購他們喜歡的方式。

每規範section 3.1

在起始標籤或空元素標籤屬性規格的順序並不顯著

+0

謝謝@Andreas for找到規範鏈接 –

+0

謝謝安德烈亞斯。我是XML開發新手。我試圖學習規範,但你不明白。你能提供一些解決方案嗎?另一個通知是,當我在Free XML編輯器中打開XML文件時,它以正確的順序顯示,但爲什麼不在瀏覽器中顯示。 – SKhan

+0

@ShahabKhan我不知道你在找什麼解決方案 - 訂單沒有定義/對於元素來說很重要,所以每個人都可以自由地顯示他們想要的屬性,包括匹配XML文本表示的屬性。但是作爲用戶,你一般無法控制它。 –

相關問題