DataTable. DataTable转换为JSON对象. 我通过调用来使用此代码:
string result = JsonConvert.SerializeObject(DatatableToDictionary(queryResult, "Title"), Newtonsoft.Json.Formatting.Indented);
Run Code Online (Sandbox Code Playgroud)
要将DataTable转换为JSON,它可以正常工作并返回以下内容:
{
"1": {
"viewCount": 703,
"clickCount": 98
},
"2": {
"viewCount": 509,
"clickCount": 85
},
"3": {
"viewCount": 578,
"clickCount": 86
},
"4": {
"viewCount": 737,
"clickCount": 108
},
"5": {
"viewCount": 769,
"clickCount": 130
}
}
Run Code Online (Sandbox Code Playgroud)
但我希望它返回以下内容:
{"records":[
{
"Title": 1,
"viewCount": 703,
"clickCount": 98
},
{
"Title": 2,
"viewCount": 509,
"clickCount": 85
},
{
"Title": 3,
"viewCount": 578,
"clickCount": 86
}, …Run Code Online (Sandbox Code Playgroud) 我想要一个函数,它接受一个数据表并返回一个List(对象不是DataRow)例如.:
我知道我可以这样做(但这需要知道列名):
// Datatable dt = Filled from a Database query & has 3 columns Code,Description & ShortCode
List<object> rtn = new List<object>();
var x = from vals in dt.Select()
select new
{
Code = vals["Code"],
Description = vals["Description"],
ShortCode = vals["ShortCode"],
};
rtn.AddRange(x)
return rtn;
Run Code Online (Sandbox Code Playgroud)
我想要的是一个通用版本,以便我可以传入任何数据表,它将根据数据表中的列名生成.
我想知道是否有任何函数或东西可以将SQL select查询结果转换为JSON字符串格式?
例如,SQL选择查询结果是,
current target
-----------------
500 1000
1500 2000
Run Code Online (Sandbox Code Playgroud)
JSON结果:
[{"current":500,"target":1000},{"current":1500,"target":2000}]
Run Code Online (Sandbox Code Playgroud)
任何想法都会有所帮助。
谢谢。