私は、その後のコードがあります。まず列挙スローの「シーケンスに要素が含まれていない」
if (myList.Where (.. condition ..).Where (.. another condition ..).Any())
{
var element = myList.Where (.. condition ..).Where (.. another condition ..).First().Elements ;
..some logic over element ..
}
を私は例外IF文の内部の最初の行に「シーケンスに要素が含まれていない」を得ます。
myListはで、MyObjectはフォームExpandoObjectを継承し、Elementsと呼ばれるゲッターを持ち、動的にキャストされたオブジェクトを返します。
私が最初と最後の両方で実行されたクエリの詳細を取得しようとしました。
myList.Where (x => x.Child.Name.Equal ("Name").Where (x => x.Elements.Value == myValue)
[mcve]を表示してください。他のものとは別に、条件が2行で同じか、データソースが安定しているかどうかはわかりません。 (一般的に、私はこの種の二重評価を避けるよう勧めます...) –
あなたはどんな説明をしていますか?フィルタを満たす項目はありません。なぜFirstOrDefaultを実行するのではなく、 'Any' +' First'をやっているのですか? – Luaan
サイドノート。なぜsequence.Any(条件)の代わりに 'sequence.Where(条件).Any()'を書くのですか? – Dennis