如何使用C#.NET HashTable实现所需的JSON格式

bal*_*anv 4 c# hashtable

如何使用C#.NET HashTable实现下面提到的JSON格式

{"DoWorkResult":
      [
       {"Perimeter":"55},
       {"Mortgage":"540"},
       {"Area":"1000"}
      ]
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用Hashtable执行此操作,如下所示

    Hashtable hashtable = new Hashtable();

    hashtable.Add("Area", 1000);
    hashtable.Add("Perimeter", 55);
    hashtable.Add("Mortgage", 540);
Run Code Online (Sandbox Code Playgroud)

但结果如下所示

{"DoWorkResult":
      [
       {"Key":"Perimeter","Value":55},
       {"Key":"Mortgage","Value":540},
       {"Key":"Area","Value":1000}
      ]
}
Run Code Online (Sandbox Code Playgroud)

注意:我在WCF服务方法中返回实际的Hash表,我使用ajax调用来读取后端的输出.

我在前端使用的Ajax方法:

$.ajax({
            type: 'POST',
            url: '/Service.svc/DoWork',
            success: function(data) {
                alert(data);
            }
        });
Run Code Online (Sandbox Code Playgroud)

L.B*_*L.B 8

使用JavaScriptSerializer和Json.Net

var list = new ArrayList();
list.Add(new { Area = 1000 });
list.Add(new { Perimeter = 55 });
list.Add(new { Mortgage = 540 });

var s1 = new JavaScriptSerializer().Serialize(new { DoWorkResult = list });
var s2 = JsonConvert.SerializeObject(new { DoWorkResult = list });
Run Code Online (Sandbox Code Playgroud)