OleDbDataReader を使用して、MS Access 2010 のテーブルからレコードを取得しようとしています。場合によっては、レコードを取得しているテーブルに、指定されたクエリの複数のレコードが含まれています。例: 2 つのテーブル。Ist テーブルには 2 つの列があります。1 つは名前 (主キー) で、もう 1 つは数字です。2 番目のテーブルには多くのフィールドが含まれています。1 つは外部キーとしての Name フィールドです。クエリが両方のテーブルで 1 つのレコードを返すレコードに一致する場合もありますが、1 番目のテーブルからは 1 つのレコードがあり、2 番目のテーブルからは多くのレコードがある場合もあります。したがって、私のデータリーダーは、テキスト ボックスにデータを入力するレコードの 1 つだけを取り込みます。そこで、これらの複数のレコードをリストボックスに入れる方法を見つけたいと思い、このフォーラムで質問しました。与えられた答えは、LINQ を使用して「結果を List/IEnumerable に入れる」ことでした。それだけ簡単だったらいいのに。私は List/IEnumerable を取り入れようとしましたが、後戻りするだけでなく、ますます混乱しています。私の理解では、まったく新しいクラス、コンストラクター、メソッドのセットなどを作成し、任意の型 (int、string など) を取るリストを作成する必要があります。これは正しいです?私の新しいクラスはで始まりますか
public class myList : IEnumerable<T>
{
public IEnumerable<T> GetEnumerator()
{
foreach (object o in objects)
{
yield return 0;
}
}
}
Form クラスの内部メソッド
while (myreader.Read())
{
foreach (object o in myList) //do something
}
T は任意の型ですが、それ以外の場合は int または string を使用しますか?