次のように2つのクラスがあり、クラスAはクラスBを継承しています。
public class A
{
public string Title { get; set; }
}
public class B: A
{
}
次に、クラス A の項目のリストを受け取る次のような関数があります。
public static void Get(List<A> values)
{
// Do something
}
クラス B のアイテムのリストを次のように関数に渡そうとすると、
private function void Test()
{
var k = new List<B>();
Get(k);
}
次のエラー メッセージが表示されます
「System.Collections.Generic.List<B>」から「System.Collections.Generic.List<A>」に変換できません
B は A から継承するだけで、A が持っているプロパティを持つので、これはうまくいかないのでしょうか?
私はすでにこれを調べようと何時間も費やしてきましたが、何が間違っているのかを理解することはできませんでした. どうすれば修正できますか?