A conversão de um conjunto de dados para JSON usando .NET 3.5 em C #

votos
6

Fui à procura de uma maneira simples para converter um conjunto de dados a partir de um PostgreSQL banco de dados para JSON para uso em um projeto que estou construindo.

Esta é minha primeira vez usando JSON, e eu achei muito complicado encontrar uma maneira simples de fazer isso. Eu tenho usado um StringBuilder no momento para criar uma string JSON a partir da informação no conjunto de dados, mas ouvi dizer que é possível fazer isso de maneira muito simples com .NET 3.5 usando o System.Runtime.Serializationnamespace, embora eu ainda tenho que encontrar uma simples artigo ou blog sobre como isso é feito! Qual é a maneira mais fácil de fazer isso?

Publicado 10/12/2008 em 12:59
fonte usuário
Em outras línguas...                            


4 respostas

votos
6

Use Newtonsofts Json.Net e confira DataTable JSON serialização em JSON.NET e JavaScriptSerializer onde ele é usado para criar um conversor DataSet-to-JSON.

Respondeu 10/12/2008 em 13:07
fonte usuário

votos
0

Talvez você já ouviu falar sobre o System.Runtime.Serialization.Json namespace no recém-anunciado .NET Framework 4.0 .

Respondeu 10/12/2008 em 13:45
fonte usuário

votos
0
public static string GetJSONString(DataTable Dt)
{
    string[] StrDc = new string[Dt.Columns.Count];
    string HeadStr = string.Empty;

    for (int i = 0; i < Dt.Columns.Count; i++)
    {
        StrDc[i] = Dt.Columns[i].Caption;
        HeadStr += "\"" + StrDc[i] + "\" : \"" + StrDc[i] + i.ToString() + "¾" + "\",";
    }

    HeadStr = HeadStr.Substring(0, HeadStr.Length - 1);

    StringBuilder Sb = new StringBuilder();
    Sb.Append("{\"" + Dt.TableName + "\" : [");

    for (int i = 0; i < Dt.Rows.Count; i++)
    {
        string TempStr = HeadStr;
        Sb.Append("{");

        for (int j = 0; j < Dt.Columns.Count; j++)
        {
            TempStr = TempStr.Replace(Dt.Columns[j] + j.ToString() + "¾", Dt.Rows[i][j].ToString());
        }
        Sb.Append(TempStr + "},");
    }

    Sb = new StringBuilder(Sb.ToString().Substring(0, Sb.ToString().Length - 1));
    Sb.Append("]}");

    return Sb.ToString();
}
Respondeu 20/04/2011 em 08:53
fonte usuário

votos
4

Para outros a ver este tópico:

Aqui é a maneira mais simples para converter um conjunto de dados para uma matriz JSON como json_encode( PHP ) faz com ASP.Net:

using Newtonsoft.Json;

public static string ds2json(DataSet ds) {
    return JsonConvert.SerializeObject(ds, Formatting.Indented);
}
Respondeu 07/06/2013 em 14:39
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more