4

.csvファイルとその値を読み取るcsvリーダークラスがあります....それから作成しました... 3つのヘッダー列が含まれdatatableていると考えてください....値が正常に追加されました....今、私はしたいですこれに2つの列を追加します...これを試しましたが、うまくいかないようです。DatatableName,EmailId,PhoneNoIsDeleted,CreatedDatedatatable

    foreach (string strHeader in headers)
    {
        dt.Columns.Add(strHeader);
    }
    string[] data;
    while ((data = reader.GetCSVLine()) != null)
    {
        dt.Rows.Add(data);
    }
    dt.Columns.Add("IsDeleted", typeof(byte));
    dt.Columns.Add(new DataColumn("CreatedDate", typeof(DateTime)));
    foreach (DataRow dr in dt.Rows)
    {
        dr["IsDeleted"] = Convert.ToByte(0);
        dr["CreatedDate"] = Convert.ToDateTime(System.DateTime.Now.ToString());
        dt.Rows.Add(dr);
    }

dt.Rows.Add(dr);This row already belongs to this table. ...というエラーが表示されます。

代替テキスト http://www.imagechicken.com/uploads/1273560975016964800.jpg

4

2 に答える 2

3

テーブルにデータ行を再度追加するのはなぜですか?

線を取り除くdt.Rows.Add(dr);

dt.Rows[i]["IsDeleted"] = Convert.ToByte(0);forループを使用して、このようにデータテーブルを直接編集します

于 2010-05-11T06:04:51.080 に答える
2

dt.Rows.Import または dt.ImportRows を使用します。名前を忘れました

またはコードから判断すると、なぜ dt.Rows.Add が必要なのですか? 省略すべきではないか。

于 2010-05-11T06:04:33.353 に答える