2
我有一個DataSet,其中包含輸出(寫入)到XMl文件的數據。Dataset.WriteXml()命名空間和前綴
我添加了一個命名空間和前綴的數據集是這樣的:
public static string XmlNamespace = "http://namespace";
public static string XmlPrefix = "ns0";
RequestDataSet.Namespace = XmlNamespace;
RequestDataSet.Prefix = XmlPrefix;
的XML輸出如下:
<?xml version="1.0" standalone="yes"?>
<ns0:list xmlns:ns0="http://namespace">
<ns0:item xmlns="http://namespace">
<data1>1234</data1>
<data2>91011</data2>
</item>
</ns0:list>
但它應該是這樣的:(在沒有命名空間項目記錄。只是前綴)
<?xml version="1.0" standalone="yes"?>
<ns0:list xmlns:ns0="http://namespace">
<ns0:item>
<data1>1234</data1>
<data2>91011</data2>
</item>
</ns0:list>
我曾嘗試將表前綴/命名空間設置爲空像這樣:
RequestDataSet.Tables["item"].Prefix = XmlPrefix;
RequestDataSet.Tables["item"].Namespace = null;
但是,這也行不通...有沒有人知道這個解決方案?
可能性能方面的考慮在這裏爲好,這取決於你的XML的大小。 – Nick 2012-01-12 12:15:30
我不太確定它是不同的故事,因爲我構建的xml文件將被髮送到BizTalk服務器進行處理,我的問題是BizTalk無法驗證我的xml文件,因爲它不喜歡命名空間: )我會嘗試你現在給我的解決方案!不好報告回來:) – 2012-01-12 12:25:28
啊,BizTalk似乎出現在這些情況!好的,讓我知道。我們在BizTalk中的解決方案是在映射器中具有內聯函數,如果我記得正確地做了與上述類似的事情。如果這是您的選擇,可以使用映射器中的XSLT修復此問題。保持我的發佈。 – Nick 2012-01-12 12:28:27