私は親クラス(ParentClass
)を継承するクラスと共に、いくつかのプロパティ(この場合はlong
とstring
)しか保持しません新しいプロパティを追加するのではなく、メソッド実装の一部を変更するだけです(ChildClass
としましょう)。Dictionary <int、ParentObject>をDictionary <int、ChildObject>に変換するLINQ
に変換する方法は、Dictionary<int, ParentClass>
です。理想的には私は、LINQでこれを行うにはしたいと思いますが、ここではforeach
ループと私の現在の実装です:
bar = new Dictionary<int, ChildClass>();
foreach(var foo in parentDictionary) { //parentDictionary is Dictionary<int, ParentClass>
bar.Add(foo.Key, new ChildClass() { Id = foo.Value.Id, Name = foo.Value.Name});
}
はワンライナーにするためにLINQでこの変換を実装するための簡単な方法はありますか?
ああ、私はあなたが 'Dictionary'に' ToDictionaryを() '呼び出すことができます実現しませんでした。 –
@ChrisH。 'IDictionary'はIEnumerable >から継承します。つまり、LINQメソッドを使用できます。 –