web-dev-qa-db-ja.com

DataRowを文字列配列に変換するにはどうすればよいですか?

DataGridRow(アイテム配列)にいくつかの値があり、これらのすべての値を文字列配列にフェッチしたい。どうすればこれを達成できますか?

DataGridRow row = (DataGridRow)Lst.ItemContainerGenerator.ContainerFromIndex(k);
            DataRowView Drv = (DataRowView)row.Item;
            DataRow dr = (DataRow)Drv.Row;
14
Shashank

1つの可能性は、dr.ItemArray;を呼び出すことです。これにより、object[]が得られます。次に、各オブジェクトを使用する前にstringにキャストする必要があります。

14
var rowAsString = string.Join(", ", dataTable.Rows[0].ItemArray); 

上記のようなラムダ式は必要ありません。

25
Jiss
var rowAsString = string.Join(", ", dr.ItemArray.Select(c => c.ToString()).ToArray());

これにより、データ行の各項目がカンマで区切られた文字列が得られます。

6
Rune Grimstad

LINQは砂糖を追加します。

var stringArray = dr.ItemArray.Cast<string>().ToArray()
6
cyrotello

これは私のために働きました:

string[] months = string.Join(",", dataTable.Rows[0].ItemArray).Split(',').ToArray();
0
olleh