0

我有一个 Web API,如果我访问一个有效的链接,它将显示一个 XML。

但是,在我的其他应用程序中,当我调用时:

using (var webclient = new WebClient())
{
    var doc = webclient.DownloadString(url);
}

它正在返回 JSON 数据。

如何将此 JSON 转换为数据表?或者,我是否应该“反序列化”这个 JSON 使其成为 XML,然后我可以使用 XML 将其转换为数据表?

4

1 回答 1

4

您可以直接DataTable使用 json.NET,但我建议您反序列化为其他对象,除非您有充分的理由使用 a DataTable,例如,如果 json 实际上是类似于 a 的结构DateTable,这并不正常。Json 通常与原生对象密切相关,一般来说,这是对其进行建模的最佳方式。

您可以使用此方法将其直接反序列化为DataTable;

   DateTable myDataTable = JsonConvert.DeserializeObject<DataTable>(json);

如果您选择使用本机对象路线,您可以像其他任何方法一样在 C# 中定义对象(它们需要与 json 中的属性完全匹配的属性),然后调用相同的方法,除非我有DataTable您将使用您的类型.

于 2013-06-11T16:53:58.267 回答