У нас проблема с .NET 3.5 WebForms сайт в котором иногда наши журналы ошибок начинают заполнение со следующим сообщением об ошибке:время выполнения HttpException затрагивает только одну страницу/UserControl
«Несколько элементов управления с тем же идентификатором ' ctl09 ". FindControl требует, чтобы элементы управления имели уникальные идентификаторы."
Я знаю очень мало об исключении, поскольку я никогда не видел его во время отладки локально и никогда не попадал в журналы ошибок достаточно быстро, чтобы запускать сеанс удаленной отладки. Я знаю, что повторная обработка пула приложений устраняет проблему.
Это влияет только на одну страницу [большого трафика] на сайте. Странно то, что сайт использует логику генерации пред-4.0. Таким образом, когда страница работает, во всем источнике представления нет элемента html, который не является префиксом автоматического генерируемого идентификатора управления, за которым следуют «фактические» идентификаторы (т. Е. Ctl09_someID_someOtherID).
Итак, 2 основные вопросы, хотя любые идеи приветствуются:
- Что бы случаю контроль, чтобы случайно остановить строится правильно?
- В отличие от Global.asax, как я могу захватить эту ошибку и заставить элемент управления перекомпилировать? Пул приложений для утилизации?
Я в значительной степени затоплен.
Это конкретная страница, и она использует один серверный элемент управления, который хранит данные в состоянии представления. На самом деле я нахожусь в процессе удаления хранилища ViewState. Что может быть связано с сохранением данных в состоянии представления? – fordareh
Well ViewState должен найти элементы управления после того, как страница будет отправлена назад, поэтому, если есть какие-либо несоответствия, она будет бомбить, ужасно. Можете ли вы повторно произвести ошибку? – Mantorok