0
我正在將EDIFACT文件轉換爲OUIUBL文件(技術上只是一個XML文件),(本質上是我創建一個XML文件),我希望在我的標籤中有前綴比如「cac:」。例如。強制XmlWriter使用'無效'字符
<cac:Tax>
<cbc:Amount>500.00</cbc:Amount>
</cac:Tax>
我使用的XmlWriter創建XML,基本上做它像這樣:
writer.WriteStartDocument()
writer.WriteStartElement("cac:Tax")
writer.WriteElementString("Amount", "500.00")
writer.WriteEndElement()
writer.WriteStartDocument()
但我得到一個錯誤說「:」是無效字符。我如何強制它使用它呢?我曾嘗試以下
Dim settings As XmlWriterSettings = New XmlWriterSettings()
settings.Indent = True
settings.CheckCharacters = false
而且我也試着設置一個前綴和命名空間爲起始元素:
writer.WriteStartElement("cac", "Tax", Nothing)
但無論是那些似乎工作......好吧設置前綴一樣,但只有當我還聲明一個命名空間時,我不想那樣做。
我希望它格式化,如XML,但忽略任何語法上的不同:)
看看這個https://msdn.microsoft.com/en-us/library/aa302296.aspx 或者http://www.w3schools.com/xml/xml_schema.asp 「CAC: 「是架構。 – Malcor
@Malcor:技術上cac:不是模式,而是可能繼承模式的名稱空間前綴。 – JaggenSWE
@JaggenSWE你完全正確。 – Malcor