ホームページ > バックエンド開発 > C++ > C# DataTable をカスタム JSON 形式に効率的に変換するにはどうすればよいですか?

C# DataTable をカスタム JSON 形式に効率的に変換するにはどうすればよいですか?

DDD
リリース: 2025-01-21 16:43:09
オリジナル
630 人が閲覧しました

How Can I Efficiently Convert a C# DataTable to a Custom JSON Format?

C# で DataTable を JSON に変換する

この記事では、C# の DataTable オブジェクトを JSON 形式に変換する方法について説明します。この問題は、データベースからレコードを取得して DataTable に変換し、それを JSON オブジェクトに変換して JavaScript 関数に返すことから始まります。ただし、必要な JSON 形式は現在の出力とは異なります。この記事では、目的の JSON 形式を実現するためのソリューションを提供します。

この問題を解決するには、さまざまなシリアル化方法を使用できます。 JsonConvert.SerializeObject を使用する代わりに、System.Web.Script.Serialization 名前空間で JavaScriptSerializer を使用することを検討してください。この代替方法により、JSON 出力構造をより詳細に制御できるようになります。

このソリューションを実装する方法の例を次に示します:

<code class="language-csharp">public string ConvertDataTabletoString()
{
    DataTable dt = new DataTable();
    using (SqlConnection con = new SqlConnection("YOUR_CONNECTION_STRING"))
    {
        using (SqlCommand cmd = new SqlCommand("YOUR_QUERY", con))
        {
            con.Open();
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            da.Fill(dt);
            System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
            List<Dictionary<string, object>> rows = new List<Dictionary<string, object>>();
            Dictionary<string, object> row;
            foreach (DataRow dr in dt.Rows)
            {
                row = new Dictionary<string, object>();
                foreach (DataColumn col in dt.Columns)
                {
                    row.Add(col.ColumnName, dr[col]);
                }
                rows.Add(row);
            }
            return serializer.Serialize(rows);
        }
    }
}</code>
ログイン後にコピー

以上がC# DataTable をカスタム JSON 形式に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート