【发布时间】:2011-10-13 05:52:17
【问题描述】:
我已经设置了我的 REST 服务,它工作正常。这是我从服务中得到的响应,如图所示:
如何在我的 WPF 应用程序中解析这种类型的请求?
【问题讨论】:
我已经设置了我的 REST 服务,它工作正常。这是我从服务中得到的响应,如图所示:
如何在我的 WPF 应用程序中解析这种类型的请求?
【问题讨论】:
嗯,有很多方法。您可以使用XmlReader,将其加载到XmlDocument,等等。
前一个选项公开了一个接受输入流和 XmlReaderSettings 实例的构造函数。
但是这个响应是如何返回的呢?如果您向我们展示了一些代码,或者提供了更多信息,那么您可能会发现我们有更合适的不同方法。
【讨论】:
您收到的响应似乎是一个包含发布者信息的 XML 结构。至于解析它,您有许多选项,但是所有这些都要求/希望您拥有生成的 XML 的架构。
就个人而言,我会使用选项 1 - 它确实需要架构(其他选项在技术上不需要),但它确实为您提供了比 xpath/linq 查询更容易维护和使用的对象。
还值得一提的是,根据服务引用添加到客户端的方式(以及服务如何公开自身),您可能已经将此 XML 类绑定到客户端服务引用中。例如,您在客户端中的服务参考可能允许您这样做:
PublisherInfo pi = myServiceClient.GetPublisherInfo();
在这种情况下,所有从 XML 到 PublisherInfo 的转换都会为您处理。我猜上面的示例 XML 是通过在浏览器中调用服务获得的,因此转换为 PublisherInfo 显然不会发生,因为这会发生在客户端代码中。
【讨论】:
为什么需要解析呢,在WPF项目中添加服务的引用时为什么不用Visual Studio生成的类?
如果你真的想解析它,请使用其他答案中提到的 Xml 库
【讨论】: