0

ループなしで同じ内容の複数の行を追加する方法はありますか?

以下は、これを達成するために現在使用しているコードです。

        DataTable dtMessageDetails = new DataTable("Private Message Details");
        for (int i = 0; i < 10; i++)
        {
            dtMessageDetails.Rows.Add("65E6BD38-2806-S15G-9DC5-9DE908333996", 3, 0, "News", "News", Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd")), "Publish", "mes", 0, 0, 0, "null", "null", "Active");
        }

そして、私のデータテーブルは次のようになります

ここに画像の説明を入力

ループを LINQ などの他のアプローチに置き換えたいと考えています。

4

2 に答える 2

3

Linq はデータのクエリ用であり、挿入用ではありません。linq を使用してデータを準備できますが、行を追加するために同じループを使用するため、高速にはなりません。したがって、同じデータを挿入しています。反復ごとに新しい項目配列を作成する代わりに、これらのデータを準備することをお勧めします。

DataTable dtMessageDetails = new DataTable("Private Message Details");
object[] items = { "65E6BD38-2806-S15G-9DC5-9DE908333996", 3, 0, "News", "News", 
                   Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd")), 
                   "Publish", "mes", 0, 0, 0, "null", "null", "Active" };

for (int i = 0; i < 10; i++)    
    dtMessageDetails.Rows.Add(items);
于 2013-10-30T10:30:11.450 に答える