例:
public class ListInheritanceTest
{
public void Test1()
{
List<string> list = new List<string>();
MyList myList = list;
}
}
public class MyList : List<string>
{
}
しかし、MyList myList = list
「型 'System.Collections.Generic.List' を 'ConsoleTest.MyList' に暗黙的に変換できません」というエラーがあります。
どうすればこれを修正できますか? ありがとう。
----編集----
エラーが発生する理由は尋ねていません。割り当てを機能させるための回避策を知りたいです。上記のコードは単純化された例です。目的はList<SomeType>
、後方非互換性を導入することなく、コード内のすべてを MyList に変換することです。
--- 2回目の編集 ----
質問を言い換えさせてください。上記のコードで MyList を同じ方法で定義したとします。を MyListに割り当てる最も簡単な方法は何ですか。List<string>
そんなこと知ってる
foreach(var item in list)
mylist.Add(item)
常に動作します。よりエレガントなものを探しているだけです。