2009-11-04 49 views
0

我有以下的(忽略转义字符)的JSON输出我怎么能转换为字符串(JSON)看起来像另一个字符串

"{\"sEcho\":1,\"iTotalRecords\":10,\"iTotalDisplayRecords\":10,\"aaData\":[{\"Job\":\"developer\",\"Name\":\"kurt\"},{\"Job\":\"plumber\",\"Name\":\"john\"}]}" 

这是我从

Person person = new Person(); 
      person.Name = "kurt"; 
      person.Job = "developer"; 

      Person reps2 = new Person(); 
      reps2.Name = "john"; 
      reps2.Job = "plumber"; 

      aa[0] = person; 
      aa[1] = reps2; 

      var o = new 
         { 
          sEcho = 1, 
          iTotalRecords = 10, 
          iTotalDisplayRecords = 10, 
          aaData = aa 

         }; 


      string d = JsonConvert.SerializeObject(o); 

得到什么我需要的是;

{"sEcho":1,"iTotalRecords":10,"iTotalDisplayRecords":10,"aaData":["developer","kurt"],["plumber","john"]] 

有人得到了一个漂亮的C#程序,我可以通过任何种类(如人,车,窗口小部件等)的对象,它会转换它即删除的对象字段,大括号等还是有一些格式化Json上的选项,我看不到要这样做。

的原因我需要做的是这样的话,我可以使用从www.datatables.net这是

感谢

期待它在这种格式的数据表

回答

1

我的猜测是不是一个Person对象,你必须创建为每个人名单,将作为Person.Job索引0和Person.Name为索引1

List personList = new List<string>(); 
personList.add("developer"); 
personList.add("kurt"); 
List reps2List = new List<string>(); 
reps2List.add("plumber"); 
reps2List.add("john"); 
aa[0] = personList; 
aa[1] = reps2List; 
0

不知道你的意思是“对象字段”,但这里有一个例子如何取出大括号....

public static string MakeJsonLikeStr(object o) 
{ 
    string json = JsonConvert.SerializeObject(o); 
    return json.Replace("{", "").Replace("}", ""); 
}