2016-10-13 8 views
0

列名と値でDataTableをArrayに変換する必要があります。 このように:arrayListオブジェクトのデータ型[] = {dtTable.nameColumn = row.value}

string sql = "Select * from tblAlumn; 
private DataTable dt = DataBaseHelper.ExecuteQuery(strSQL); 
/*I want convert this table to array, :*/ 
object[] ar = [{nameColumn:value, nameColumn:value,...}, 
       {nameColumn:value, nameColumn:value,...}, ...]//all Table 
+0

なぜですか?それはできますが、通常は必要ありません。 DataTableとして残すことは、オブジェクトが持たない型を持つなどの利点があります。 – jdweng

答えて

0

私のために働く方法は以下のとおりです。

dtRecordがあなたのDataTable変数

"A"、 "B"、 "C" では列ヘッダーです。

"value1"、 "value2"、 "value3"を名前列に置き換えることができます。

var results = dtRecord.AsEnumerable().Select(x => new { value2 = x.Field<string>("A"), value3 = x.Field<string>("B"), value1 = x.Field<string>("C") }); 
      object[] ar = results.ToArray(); 

名前列をそれぞれのヘッダー名に置き換えると、クエリは次のようになり、結果は期待通りになります。

var results = dtRecord.AsEnumerable().Select(x => new { A = x.Field<string>("A"), B = x.Field<string>("B"), C = x.Field<string>("B") }); 
      object[] ar = results.ToArray(); 
関連する問題