私の質問はかなりばかげていると思います。別の言い方をすると、次のようになります。コードに夢中になりすぎて、今のところ回避策を見つけることができません。問題に長くとどまりすぎると、視野がどんどん狭くなります><。さらに、私は継承やポリモーフィズムなどを十分に理解していません。
ここにアイデアがあります:派生クラスの複数のリストがあり、それらのリストでジェネリック関数を呼び出したい(基本クラスのメンバーにアクセスして変更する)。継承には何か関係がある気がしますが、今のところ思い通りに機能させることができません。
これは私がやろうとしていることの非常に簡単な例です:
class Baseclass
{
public int ID;
public string Name;
}
class DerivedClass1 : Baseclass
{
}
private void FuncOnBase(List<Baseclass> _collection)
{
// ...
foreach (Baseclass obj in _collection)
{
++obj.ID;
}
// ...
}
private void FuncTest()
{
List<DerivedClass1> collection1 = new List<DerivedClass1>();
collection1.Add(new DerivedClass1() { ID = 1 });
collection1.Add(new DerivedClass1() { ID = 2 });
collection1.Add(new DerivedClass1() { ID = 3 });
FuncOnBase(collection1); // ==> forbidden, cannot convert the derived class list to the base class list
}