У меня есть набор элементов IEnumberable
. Я использую .Single()
для поиска конкретного объекта в коллекции.
Я выбираю использовать Single()
, потому что должен быть только один конкретный элемент. Однако, если этого не существует, тогда мне нужно его создать и добавить в коллекцию.
Моя проблема в том, что Single()
выдает ту же ошибку, если нет элемента, соответствующего предикату, или если есть несколько элементов. Моя идея заключалась в том, чтобы вызвать вызов Single()
внутри попытки и поймать исключение, добавить элемент, а затем продолжить. Однако, поскольку оба сценария бросают InvalidOperationException
, как я могу определить, не связано ли это с элементами или несколькими элементами?
Я знаю, что могу использовать First()
, но это не гарантирует, что должно быть только одно (без дополнительной работы).
Я мог бы также использовать Count()
перед вызовом Single()
, но это просто подрывает точку Single()