gpt4 book ai didi

c# - 在没有适当的 REST-Api 的情况下测试 RestSharp 的反序列化

转载 作者:数据小太阳 更新时间:2023-10-29 02:04:09 25 4
gpt4 key购买 nike

编辑:问题的解决方案可以在 John Sheehan 的第一条评论中找到!

我想使用 Restsharp作为我项目的 Rest-Client。由于 REST 服务器尚未运行,我想在没有服务器的情况下测试客户端。我主要关注返回的 XML-Response 的反序列化。是否可以在没有适当的 RestSharp.RestResponse 的情况下使用 RestSharp 反序列化 XML?

我试过这样的:

public void testDeserialization()
{
XmlDeserializer d = new XmlDeserializer();
RestSharp.RestResponse response = new RestSharp.RestResponse();
string XML = @"<Response><Item1>Some text</Item1><Item2>Another text</Item2><Item3>Even more text</Item3></Response>";
response.Content = XML;

d.RootElement = "Response";
Response r = d.Deserialize<Response>(response);
}

public class Response
{
public string Item1 { get; set; }
public string Item2 { get; set; }
public string Item3 { get; set; }
}

反序列化创建了一个 Response-Class 的对象,其中每个字段都是空的。有没有一种方法可以测试任何给定的 xml 是否(以及如何)被 RestSharp 反序列化?

编辑:为了更好的可读性——这是我正在使用的 XML:

<Response>
<Item1>Some text</Item1>
<Item2>Another text</Item2>
<Item3>Even more text</Item3>
</Response>

最佳答案

我希望我做对了 - 但为了明确这个问题已经解决,我正在复制解决方案(来自 John Sheehan 的评论):

You shouldn't have to specify RootElement. That's only for when the root isn't at the top level. Try that and let me know if it works. Here's how we test the deserializer for the project: https://github.com/restsharp/RestSharp/blob/master/RestSharp.Tests/XmlDeserializerTests.cs

(编辑:更新了指向正确文件的链接)

关于c# - 在没有适当的 REST-Api 的情况下测试 RestSharp 的反序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8896911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com