私はDataRowCollection.Add(DataRow行)が新しい行をそのデータテーブルに挿入する場所を把握しようとしています。それはテーブルの最後にありますか?ランダムですか?DataRowCollection.Addメソッドはどこに新しい行を挿入しますか?
また、私はデータテーブルをループする際にこれを使用したいと思います。いくつかの条件が存在する場合は、異なるデータを含む新しい行を追加して、Forループを介してデータテーブルの末尾まで実行します。このアプローチに特有の問題はありますか?それ以外はどうすればいいですか?
EDIT:私はメモリに格納された.Net DataTABLEをループしています。このループ操作中に元のデータが格納されているdataBASEには触れていません。 DataTABLEにはループの前にデータが設定されているため、問題はありません。ここで
はrelavantコードです:
DataTable machineANDlastDate = new DataTable();
//Populate machineANDlastDate
for (int i = 0; i < machineANDlastDate.Rows.Count; i++)
{
lastFutureDate = DateTime.Parse(machineANDlastDate.Rows[i]["MaxDueDate"].ToString());
newDateTime = lastFutureDate.AddDays(frequency); //This is where the new date is created.
machineSerial = machineANDlastDate.Rows[i]["machineSerial"].ToString();
if (newDateTime < DateTime.Now)
{
machineANDlastDate.Rows.Add(new String[] { machineSerial, newDateTime.AddDays(frequency).ToString() });
continue;
}
...Removed for irrelevancy...
}
が、これはデータテーブルの最後に行を追加するための有効な方法は何ですか?
ハッシュでない限り、追加は最後になります – Alex
ハッシュとは何ですか? – MAW74656
ハッシュは、キー/値がある場所でより一般的です。キーはハッシュされているため、値の検索は高速です。 – jlafay