ASP.NET 4 UpdatePanel прерывает изменение - PullRequest
3 голосов
/ 14 октября 2010

Я портирую приложение ASP.NET с 3.5SP1 на 4.0. Приложение отлично работает в 3.5SP1. В 4.0 я вижу разницу в поведении UpdatePanel.

У нас есть простой пользовательский элемент управления с тестовой коробкой, кнопкой и некоторым текстом. Пользовательский элемент управления находится внутри UpdatePanel с UpdateMode = "Conditional" и ChildAsTriggers = "true".

Пользователи вводят текстовое поле и нажимают кнопку. Мы делаем поиск. Если мы что-то найдем, контент в другом месте на странице обновится - это прекрасно работает. Если мы не найдем его, мы изменим текст в пользовательском элементе управления. Это изменение никогда не появляется.

Итак, я знаю, что кнопка и логика работают. Пользовательский элемент управления не владеет UpdatePanel, в которой он находится, и было бы неплохо, если бы это не было необходимо. Но даже если кнопка вызывает событие на сервере, содержимое панели обновления не обновляется.

Кто-нибудь видел это?

1 Ответ

3 голосов
/ 25 октября 2010

Моей проблемой оказался новый механизм идентификатора клиента 4.0.Ознакомьтесь с новыми функциями здесь .

4.0 по умолчанию имеет значение «Inherit», а «autoID» является «старым» поведением.Добавив это в элемент web.config pages:

clientIDMode="AutoID"

, моя проблема ушла.Я не в восторге от принудительного обратно-совместимого поведения, но пока не смогу разобраться во всех отношениях управления, которые это должно будет сделать.

...