0

以下是 ResellerClub 的 HTTP API 检查域可用性的 http 请求:

https://test.httpapi.com/api/domains/available.json?auth-userid=166694&auth-password=span2012&domain-name=prasadvemala&domain-name=prasadvemala2&tlds=com&tlds=com

以下是它的回应:

{"prasadvemala.com":{"status":"available","classkey":"domcno"},"prasadvemala2.com":{"status":"available","classkey":"domcno"}}

在 C# 中解析此响应的最简单方法是什么?

4

2 回答 2

0

IMO,Json.net最适合快速而肮脏的 Json 解析:

var jObj = JObject.Parse(responseString);
var val = jObj["prasadvemala.com"]["status"].Value<string>();

它也可以作为nuget 包使用。

编辑

如果要枚举整个响应:

var everythingDictionary = jObj
    .Properties()
    .Select(p => new{
        key=p.Name,
        value=new{
            status=p.Value["status"].Value<string>(),
            classkey=p.Value["classkey"].Value<string>()}})
    .ToDictionary(x => x.key,x => x.value);

foreach(var k in everythingDictionary.Keys)
{
    var name = k;
    var status = everythingDictionary[k].status;
    var classkey = everythingDictionary[k].classkey;
}
于 2012-04-30T11:24:48.027 回答
0

我发现本文中的 JSON 解析器非常适合 JSON 结构可能具有动态命名属性的场景。它返回所有属性和子对象的简单嵌套哈希表。

于 2012-05-01T19:47:23.177 回答