![](/img/trans.png)
[英]How can I convert query string parameters to look like a directory parts with ASP.NET Core?
[英]how can I convert a string (json) to look like another string
我有以下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#例程,我可以传递任何类型的对象(例如Person,Car,Widget等),它将进行转换,即删除对象字段,花括号等,或者Json上有一些格式化选项,我可以看不到这样做。
我需要这样做的原因是,这样我就可以使用www.datatables.net中的数据表了,它期望以这种格式
谢谢
我的猜测是,您必须为每个Person创建一个List,而不是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;
不知道“对象字段”是什么意思,但是这里有一个如何取出花括号的示例。
public static string MakeJsonLikeStr(object o)
{
string json = JsonConvert.SerializeObject(o);
return json.Replace("{", "").Replace("}", "");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.