2008-12-10 12 views
6

Szukałem prostego sposobu na konwersję zestawu danych z bazy danych PostgreSQL do JSON do użycia w projekcie, który buduję.Konwersja zestawu danych do JSON przy użyciu .NET 3.5 w C#

To jest mój pierwszy raz, kiedy używam JSON, a znalezienie prostego sposobu na wykonanie tego zadania okazało się trudne. Używam StringBuilder w tej chwili, aby utworzyć ciąg JSON z informacji w zestawie danych, ale słyszałem, że można to zrobić bardzo prosto z .NET 3.5 przy użyciu przestrzeni nazw System.Runtime.Serialization, choć muszę jeszcze znaleźć prosty artykuł lub blog o tym, jak to się robi! Jaki jest najłatwiejszy sposób na zrobienie tego?

Odpowiedz

0

Być może słyszałeś o przestrzeni nazw system.runtime.serialization.json w nowo ogłoszonym .NET Framework 4.0.

+0

mam próbował użyć przestrzeni nazw serialization.json, ale na próżno ... Nie ma wielu przykładów na to, jak go używać, a JavaScriptSerializer i DataContractJsonSerializer wyprowadzają XML –

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(); 
} 
+0

var JObject = eval ('(' + 'JSONString +') ; '); dla (var i = 0; i DineshHona

4

uzyskać inne spojrzenie na ten temat:

Oto najprostszy sposób na konwersję zestawu danych do tablicy JSON jako json_encode (PHP) robi z ASP.NET:

using Newtonsoft.Json; 

public static string ds2json(DataSet ds) { 
    return JsonConvert.SerializeObject(ds, Formatting.Indented); 
} 
Powiązane problemy