ASP.NET Page.User является нулевым во время AJAX-запроса - PullRequest
0 голосов
/ 26 июля 2010

Я использую инфраструктуру MVC2, и в одном из моих представлений есть немного условной логики, которая получает объект Page.User.Identity и выполняет сравнение с другими значениями, чтобы определить, что отображать.

Это все прекрасно работает при начальной загрузке страницы, но когда я делаю AJAX-вызов для получения частичных обновлений страницы (я делаю все это вручную с YUI3, а не с .NET AJAX), объект Page.User всегда нуль.

Кто-нибудь знает, почему контекст Page отбрасывает объект User для асинхронных запросов?

Спасибо

Chris

1 Ответ

1 голос
/ 26 июля 2010

Если ваш метод обработки запросов является статическим WebMethod, не будет экземпляра страницы для работы, а сам Page будет null (то есть вы даже не сможете решить Page.User).

Если это действительно проблема, используйте HttpContext.Current.User. (И обязательно прочитайте Почему методы страницы ASP.NET AJAX должны быть статическими? )

...