オブジェクトから、特に辞書でLINQに頭を悩ませようとしていますが、ひどく失敗しています。
SO のいくつかのスレッドでこの構文を見てきました。
var items = (from pair in m_taskDictionary
from s in pair.Value
s).Distinct().ToList();
しかし、これをコンパイルしようとすると、構文エラーが発生します。タイプ 'OperationsPlannerData.OperationsTaskLabeledData' の式は、ソース タイプ 'System.Collections.Generic.Dictionary' のクエリ式の後続の from 句では許可されません。'SelectMany' の呼び出しで型の推定に失敗しました。
なにが問題ですか?私の Visual Studio は古すぎますか? (男の子は私を驚かせないでしょう。)私はVS 2008を使用しています。
この使用法を推奨するスレッドの 1 つへのリンクを次に示します。
簡単に言うと、解決したい問題は次のとおりです。値オブジェクトの特定のフィールドが特定の文字列と一致する辞書の最初の項目を見つけたいと考えています。アプリケーションでの 1 つの目的のために、整数をキーとするディクショナリが既にあるので、そのディクショナリをそのまま使用したいと思います。SO のさまざまなスレッドは、List<KeyValuePair<string, OperationsTaskLabeledData>>
これにオブジェクトを使用することを提案しています。そのオブジェクトを簡単に作成できましたが、その構造を検索する方法もわかりません。