|
分類:[.NET 全般]
C#についてわからないことがあります。
以下のような感じでDBからデータを取得してくるロジックがあるのですが 全レコードは itemsに格納されるのが理想なのですが 意図した結果になりません。
List<Test> items = new List<Test>(); //全レコード格納 Test item = new Test(); //一レコード格納 while (dr.Read()) { item.Fill(dr); items.Add(item); } }
−−−−−−−−−−−−−−−−−−
public class Test {
public int Test_Id { get; set; }
public Test() { this.Test_Id = 0; }
public Item Fill(SqlDataReader dr) { this.Test_Id = dr["Test_Id"]; return item; }
データベース Test_IDフィールド AAA BBB CCC と3件のレコードがあったとすると 最後に読み込んだCCCに items[0] items[1] items[2] すべてが置き換わってしまいます。
わかる方よろしくお願いいたします。
|