いくつかIEnumberableのアイテムのコレクションがあります。.Single()コレクション内の特定のオブジェクトを見つけるために使用します。
Single()特定のアイテムが1つしかないため、使用することにしました。ただし、存在しない場合は、作成してコレクションに追加する必要があります。
私の問題はSingle()、述語に一致するアイテムがない場合、または複数のアイテムがある場合に同じエラーをスローすることです。私のアイデアは、Single()呼び出しをtry内に入れて例外をキャッチし、アイテムを追加してから続行することでした。ただし、どちらのシナリオでもがスローInvalidOperationExceptionされるため、アイテムがないか複数のアイテムが原因であるかをどのように判断できますか?
使用できることはわかっていますFirst()が、(余分な作業を行わずに)1つだけにする必要があるという考えを強制するものではありません。
電話Count()の前に使うこともできますが、それはSingle()Single()