相关疑难解决方法(0)

在C#中将数据表转换为JSON

  1. 我想从数据库中获取记录DataTable.
  2. 然后将其DataTable转换为JSON对象.
  3. 将JSON对象返回给我的JavaScript函数.

我通过调用来使用代码:

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)

c# datatable json

82
推荐指数
7
解决办法
31万
查看次数

如何使用json.net将datatable转换为json字符串?

如何使用json.net将datatable转换为json?任何建议......我已经下载了必要的二进制文件...我应该使用哪个类来将我的数据表转换为json?迄今为止使用此方法通过传递我的数据表来获取json字符串...

public string GetJSONString(DataTable table)
    {
        StringBuilder headStrBuilder = new StringBuilder(table.Columns.Count * 5); //pre-allocate some space, default is 16 bytes
        for (int i = 0; i < table.Columns.Count; i++)
        {
            headStrBuilder.AppendFormat("\"{0}\" : \"{0}{1}¾\",", table.Columns[i].Caption, i);
        }
        headStrBuilder.Remove(headStrBuilder.Length - 1, 1); // trim away last ,

        StringBuilder sb = new StringBuilder(table.Rows.Count * 5); //pre-allocate some space
        sb.Append("{\"");
        sb.Append(table.TableName);
        sb.Append("\" : [");
        for (int i = 0; i < table.Rows.Count; i++)
        {
            string tempStr = headStrBuilder.ToString();
            sb.Append("{");
            for (int j = 0; …
Run Code Online (Sandbox Code Playgroud)

c# datatable json json.net

29
推荐指数
2
解决办法
7万
查看次数

使用jquery将DataTable传递给Json

我正在尝试执行一个Web服务,该服务使用以下代码返回DataTable:

$.ajax({  
    type: "POST",  
    url: url,  
    data: data,   
    contentType: "application/json; charset=utf-8",  
    dataType: "json",  
    success: function(msg) {  
        //do things  
        }  
    }); 
Run Code Online (Sandbox Code Playgroud)

如果webservice返回一个类,那么它就可以工作,因此它与输入参数等无关.它只在web方法返回一个数据表时失败(数据表只有2列和2行用于我正在进行的测试).

WebService类使用[ScriptService]属性进行修饰,因此我认为ASP.NET会自动将返回值序列化为JSON.它似乎不适用于数据表.

我发现的唯一解决方案是返回一个字符串(一个手动JSON序列化对象),但这样做对我来说似乎不对.
我正在使用Visual Studio 2008和.Net 3.5

asp.net datatable jquery json .net-3.5

5
推荐指数
2
解决办法
5万
查看次数

在ASP.NET 2.0中,我应该使用什么来将DataTable序列化为JSON?

我正在尝试支持一年前制作的遗留应用程序,并且需要使用jQuery AJAX调用来从服务器获取数据.我有一个JsonHelper类,用于序列化DataTables和DataSets.这通常在.NET 4.0中运行良好,但.NET 2.0没有System.Web.Script.Serialization库,因此没有JavaScriptSerializer类.

我试图找到另一个JSON序列化程序,但到目前为止我无法得到任何工作.

我尝试使用JSON.NET 2.0 http://json.codeplex.com/releases/view/13099,但它说它需要一个更高的框架.所以我尝试了JSON.NET 1.3.1 http://json.codeplex.com/releases/view/6987 我只能弄清楚如何将JSON写入.txt文件,我希望能够通过字符串返回客户端.

我也尝试过JsonFx.NET http://jsonfx.net/download/序列化库(适用于2.0).仍然无法得到任何工作.

我不知道我是否遗漏了这些库中的一些关键元素,或者是否有一个简单的解决方案.

提前致谢

c# asp.net serialization json .net-2.0

5
推荐指数
1
解决办法
7299
查看次数

使用每行键将DataTable转换为JSON

我认为以下将是一个非常常见的任务,并假设有一个简单的解决方案,但我找不到一个.

如果我有以下结构的数据表.

ID  Name    Active
ID1 John    TRUE
ID2 Bill    FALSE
Run Code Online (Sandbox Code Playgroud)

我想将其序列化为JSON对象,其中ID列是JSON对象中的节点,如:

[
    {
        "ID1": {
            "Name": "John",
            "Active": "True"
        },
        "ID2": {
            "Name": "Bill",
            "Active": "False"
        }
    }
]
Run Code Online (Sandbox Code Playgroud)

我查看了JSON.NET但无法让它工作.编辑:我正在使用C#

c# datatable serialization json json.net

5
推荐指数
1
解决办法
2万
查看次数

C#DataTable到Json?

我想将DataTable作为Json格式在图表上显示.

public JsonResult GetDataTable()
{
    DataTable dt = new DataTable();

    dt.Columns.Add("Jan");
    dt.Columns.Add("Feb");
    dt.Columns.Add("Mar");
    dt.Columns.Add("Apr");

    for (int i = 0; i < 10; i++)
    {
        dt.Rows.Add(i * 5, i * 10, i * 15, i * 11);
    }

    // JsonDataTable = dt to Json

    return new JsonResult
    {
        Data = new
        {
            success = true,
                chartData = JsonDataTable 
        },
        JsonRequestBehavior = JsonRequestBehavior.AllowGet
    };
}
Run Code Online (Sandbox Code Playgroud)

如何将DataTable转换为Json?

谢谢.

c# datatable json

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

json ×6

c# ×5

datatable ×5

asp.net ×2

json.net ×2

serialization ×2

.net-2.0 ×1

.net-3.5 ×1

jquery ×1