Ошибка "последовательность содержит более одного элемента"

Относительно новичок в работе с.net, но многому научился, работая с разработчиком на работе, который иногда может быть упрямым. Недавно веб-форма asp.net, которую мы разрабатываем, периодически начинала падать, так что каждый раз, когда щелкают ссылку, которая извлекает объект (в форме процесса, которую пользователь ранее заполнил), пользователь получает следующую ошибку приложения: "Последовательность содержит более одного элемента."

Все источники, на которые я смотрел онлайн, предположили, что это было исключение InvalidOperationException, выброшенное методом Single, и его можно избежать, (а) исключив источник дублирующих элементов или (b) используя метод First вместо метода Single.

Разработчик сказал мне, что я понятия не имел, о чем говорю, и это была ошибка кэширования, которая могла быть решена только через сброс IIS. Поскольку это происходило периодически, я немного обеспокоен тем, что сброс IIS не решает основную проблему, которая создает исключение. У кого-нибудь есть идеи? Прав ли мой разработчик сказать, что сброс IIS - лучший способ решить эту проблему?

Спасибо!

1 ответ

По моему мнению, ваш разработчик мог использовать LINQ. Если он использовал single() или SingleOrDefault() или First(), попросите его заменить этот метод методом FirstorDefault().

Другие вопросы по тегам