0
我使用System.ServiceModel System.ServiceModel.Web System.ServiceModel.Activation命名空間編寫了web服務。xml反序列化<string>標記
[XmlSerializerFormat]
[OperationContract]
[WebGet(UriTemplate = Routing.GetClientRoute, BodyStyle = WebMessageBodyStyle.Bare)]
string GetClientNameById(string Id);
予描述的數據與這個類:
[XmlRoot("ServiceXmlReply")]
public class ServiceXmlReply
{
[XmlElement]
public string Name;
}
問題是與響應,這是我從服務接收。它看起來像這樣:
"<?xml version=\"1.0\" encoding=\"utf-8\"?>
<string>
<ServiceXmlReply xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">
<Name>Igor<Name>
<ServiceXmlReply>
</string>"
正如你可以看到那裏不應該有「字符串」標籤,但它是。正因爲如此,我不能反序列化反應並獲取數據。
服務器和客戶端的類相同。
非常感謝您的回覆。 問題是該方法返回類的字符串的XML代碼。我不能將它轉換爲我的類型。 問題在於我的想法有額外的序列化。有誰知道如何設置它? –
我想了一次,找到了解決辦法。你是完全正確的。我只是改變了我的課程,所以它返回了我的課程,而不是xml文檔。它自己創建了正確的xml。 我現在很開心。謝謝!! –