C# 解析布尔XML结果

C# 解析布尔XML结果,c#,.net,xml,wcf,C#,.net,Xml,Wcf,我目前正在使用WCF服务来调用外部API 我有一个方法调用Ping(),用于检查外部API是否可用并准备好调用 [OperationContract] bool Ping(); 我从外部API获得以下结果: <boolean xmlns=\"http://schemas.microsoft.com/2003/10/Serialization/\">true</boolean> 我有以下通用反序列化方法: public static T Deserialize<T

我目前正在使用WCF服务来调用外部API

我有一个方法调用
Ping()
,用于检查外部API是否可用并准备好调用

[OperationContract]
bool Ping();
我从外部API获得以下结果:

<boolean xmlns=\"http://schemas.microsoft.com/2003/10/Serialization/\">true</boolean>
我有以下通用反序列化方法:

public static T Deserialize<T>(IRestResponse response)
    {
        var serializer = new XmlSerializer(typeof(T));
        var reader = new StringReader(response.Content);

        return (T)serializer.Deserialize(reader);
    }
公共静态T反序列化(iRestreponse响应)
{
var serializer=newxmlserializer(typeof(T));
var reader=newstringreader(response.Content);
返回(T)序列化程序。反序列化(读取器);
}
为什么我在使用简单类型(如boolean)调用它时会出现此异常

var res = XmlHelper.Deserialize<bool>(client.Execute(request));
var res=XmlHelper.Deserialize(client.Execute(request));
{“XML文档(1,2)中存在错误”。}

{”http://schemas.microsoft.com/2003/10/Serialization/”“没有 预期的。”}

对于许多复杂的对象,一切都可以完美地工作

这应该可以-

var xml = new StreamReader("xmlPath");
var t = new XmlSerializer(typeof(Boolean),"http://schemas.microsoft.com/2003/10/Serialization/");
var o = t.Deserialize(xml); // true

该错误消息是否已复制/粘贴?因为
/
中存在不匹配,
似乎是(1,2)-->中的小文本导致了问题。查看是否可以通过使
保持一致来解决此问题。请将其也放在
序列化/”
(请注意引号)之后。我发现此值有一个错误
xmlns=\”http://schemas.microsoft.com/2003/10/Serialization/\“>
但没有一个与此匹配
xmlns=”http://schemas.microsoft.com/2003/10/Serialization/“>
。你知道一个工作环境吗?使用
response.Content.Replace(@“\”,“”)
没有帮助,我仍然得到了一个例外:为什么反序列化?而是解析字符串响应。
var xml = new StreamReader("xmlPath");
var t = new XmlSerializer(typeof(Boolean),"http://schemas.microsoft.com/2003/10/Serialization/");
var o = t.Deserialize(xml); // true