1
我正在向國際HTTP標準寫入服務,並且有一種方法可以返回三種不同的XML結果,稱之爲單一,多重和錯誤。現在我寫了一個IXmlSerializable類,它可以使用這些結果並生成它們。但是,WCF似乎堅持我只能有一個返回的XML根名稱。我必須爲我的或單個,多個或錯誤的自定義對象選擇一個XmlRoot。WCF操作中返回不同的XML
如何設置WCF,以便我可以在運行時選擇根目錄?
這是我目前的。
/// <summary>
/// A collection of items.
/// </summary>
[XmlRoot("Multiple", Namespace = "DAV:")]
public sealed class ItemCollection : IEnumerable<Item>, IXmlSerializable
/// <summary>
/// Processes and returns the items.
/// </summary>
[WebInvoke(Method = "POST", UriTemplate = "{*path}", BodyStyle = WebMessageBodyStyle.Bare)]
[OperationContract]
[XmlSerializerFormat]
ItemCollection Process(string path);
的ItemCollection實現IXmlSerializable的和可以選擇的可能回報來寫,但是根XML節點是因爲在ItemCollection類XmlRoot屬性總是多。