2016-06-15 25 views
-4

DataTableをC#の2次元配列形式に変換したいと考えています。 以下は明確な理解のための例です。 C#でDatatableをC#の配列に変換する

のDataTable:

code   Price 
----------  ---------- 
1146441600000 34 
1146528000000 5 
1146614400000 10 
1146700800000 7 
1146787200000 12 
1147046400000 8 
1147132800000 9 

jsファイルに必要な出力:

[[1146441600000,34], 
[1146528000000,5], 
[1146614400000,10], 
[1146700800000,7], 
[1146787200000,12], 
[1147046400000,8], 
[1147132800000,9]] 

私は、フロントエンドのレンダリングのためのカミソリのエンジンを使用しています。

+0

何をしようとしたのですか?任意のコード例?あなたはどこで苦労しましたか? –

+2

素晴らしいサウンドです!あなたはそれを行うことができます – MickyD

+0

C#またはJavaScriptでやりたいですか? – user3378165

答えて

-1

LINQを使用してDataTableを配列に変換できます。

var dtEnumerable = dt.AsEnumerable(); 
tableArray = dtEnumerable.ToArray(); 
+0

これは間違いなく有用な_elements_の配列ではなく_rows_の配列です。 [ハリの答え](http://stackoverflow.com/a/37827546/585968)上記 – MickyD

0

非常に簡単:

string[] arrray = dt.Rows.OfType<DataRow>().Select(k => k[0].ToString()).ToArray(); 
+0

を参照してくださいこれは1つの行だけですどのようにこのテーブル全体としての質問に変換する必要があります答えます。 – Mairaj

+0

@MairajAhmadあなたは正しいです、コメントありがとう、私は私の答えを編集しました。 – user3378165

1

一つの方法は、フォーマットオプションとLinq拡張機能を使用して、これをやっています。

DataTable dt; // set your source 
var rows = dt.AsEnumerable() 
      .Select(r=> string.Format("[{0}]", string.Join(",", r.ItemArray))); 

var output = string.Format("[{0}]", string.Join(",", rows.ToArray())); 

チェックこのDemo