我在我的C#生成XML,當我有例如幾個空標籤,的XElement被擴大的空標籤
new XElement("TransLogID", "")
一些那些被渲染爲
<TransLogID></TransLogID>
,而其中一些的獲取呈現爲
<TransLogID/>
什麼控制着什麼時候標籤會被展開,什麼時候沒有?我如何強迫他們做我想要的行爲?
我在我的C#生成XML,當我有例如幾個空標籤,的XElement被擴大的空標籤
new XElement("TransLogID", "")
一些那些被渲染爲
<TransLogID></TransLogID>
,而其中一些的獲取呈現爲
<TransLogID/>
什麼控制着什麼時候標籤會被展開,什麼時候沒有?我如何強迫他們做我想要的行爲?
我想你錯了。
Root.Add(new XElement("TransLogID1", ""));
Root.Add(new XElement("TransLogID2"));
會給
<TransLogID1></TransLogID1>
<TransLogID2/>
兩個元件將具有空的要素/節點的集合,該細微的區別在於TransLogID2將具有爲IsEmpty =真。
如果你的內容爲空字符串(new XElement("TransLogID", "")
),其將呈現爲
<TransLogID></TransLogID>
但如果是空(new XElement("TransLogID", null)
),其將呈現爲
<TransLogID/>
你確定'總是以相同的方式生成節點?