asp.net: __doPostBack иногда не отображается - PullRequest
3 голосов
/ 26 января 2009

Мы получили странную ошибку в последние дни. ___doPostBack не определено.

Мы создаем довольно продвинутый веб-сайт, но не сильно используем постбэки. Одним из мест, где используется обратная передача, является контроль состояния входа в ASP.NET.

Вероятностно, иногда отображается, иногда нет. Для IE Chrome работает в основном нормально, но у FireFox весьма высока вероятность отсутствия doPostBack в источнике страницы.

Есть идеи?

PS: Кроме того, ошибка возникает только в реальной среде, которая использует Windows 2003 и IIS 5.0, dotnet framework 3.5

Может ли это быть потому, что я использую OutputCache на уровне страницы?

Ответы [ 4 ]

5 голосов
/ 18 июля 2009

Только что случилось с нами: когда googlebot или любой другой бот заходит на вашу страницу раньше обычного пользователя, страница кэшируется без каких-либо опций обратной передачи.

Мы сделали простой взлом, используя другой файл outputcacheprofile, если request.browser.javascript имеет значение false (asp.net отправляет разные версии страницы этим браузерам / сканерам / ботам)

2 голосов
/ 22 октября 2010

У меня была такая же проблема, но я понял, что ASP.NET не отображает __doPostback, когда серверные элементы управления не нуждаются в этом.

Когда я помещаю сетку или кнопку ссылки, для которой требуется __doPostback, ASP.NET отображает ее.

1 голос
/ 26 января 2009

Да, это может быть о кеше вывода, закомментируйте его и попробуйте еще раз

0 голосов
/ 26 января 2009

Обычно это происходит, когда у вас есть неправильный JavaScript где-то на странице (обычно перед функцией __dopostback).

Вы просматривали исходный код страницы и смотрели, действительно ли функция __dopostback отображается на странице, независимо от того, получаете ли вы ошибку или нет?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...