我正在嘗試編寫使用XmlSerialzer輸出xml的WCF服務。我需要一個特定的XML輸出,這就是爲什麼我不使用DataContract Seriailzer。具體來說,我正在寫一個目錄服務網站(CSW),它有一個定義的模式等使用XMLSerializer將屬性添加到類成員
我一直在試圖寫類,然後測試什麼XML輸出。這很枯燥,我可能會切換到xsd工具。我想知道的是,我可以向其他類成員添加xml屬性,還是僅將這些裝飾的xmlattributes添加到根元素,即類名?與使用XDocument手動編寫CML相比,似乎存在靈活性問題。每次我需要嵌套元素(而不是集合)似乎我需要創建一個新的類?是對的嗎?
輸出XML我需要的是:
<ows:ContactInfo>
<ows:OnlineResource
xlink:href="mailto:[email protected]"/>
</ows:ContactInfo>
這裏是我的類:
public class ContactInfo
{
[XmlElement]
public string OnlineResource = "";
[XmlElementAttribute(ElementName = "OnlineResource",Namespace = "http://www.w3.org /1999/xlink")]
public string href = "mailto:[email protected]";
}
其如下輸出XML:
<ows:ContactInfo xlink:href="mailto:[email protected]">
<ows:OnlineResource>mailto:[email protected]</ows:OnlineResource>
</ows:ContactInfo>
抱歉,我所需要的輸出是: [email protected] OWS:ElectronicMailAddress> OWS:地址> –
Euston