AJAX 请求期间 ASP.NET Page.User 为 null
我正在使用 MVC2 框架,我的一个视图有一些条件逻辑,用于获取 Page.User.Identity 对象并与其他值进行比较以确定要显示的内容。
这一切在初始页面加载时工作正常,但是当我进行 AJAX 调用以获取部分页面更新时(我使用 YUI3 手动执行此操作,而不是 .NET AJAX 内容),Page.User 对象始终为 null。
任何人都知道为什么页面上下文似乎放弃异步请求的用户对象?
谢谢,
克里斯
I'm using the MVC2 framework and one of my views has a bit of conditional logic that gets the Page.User.Identity object and does a comparison with other values to determine what to display.
That all works fine on the initial page load, but when I make an AJAX call to get partial page updates (I'm doing this all manually with YUI3, not the .NET AJAX stuff) the Page.User object is always null.
Anyone know why the Page context seems to be discarding the User object for asynchronous requests?
Thanks,
Chris
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您的请求处理方法是静态
WebMethod
,则不会有可使用的页面实例,并且Page
本身将为null
(也就是说,您甚至无法解析Page.User
)。如果这确实是问题所在,请改用 HttpContext.Current.User 。 (并且请务必阅读 为什么 ASP.NET AJAX 页面方法必须是静态的?)
If your request-handling method is a static
WebMethod
, there won't be a page instance to work with andPage
itself will benull
(that is, you won't even be able to resolvePage.User
).If that is indeed the problem, use
HttpContext.Current.User
instead. (And be sure to read Why do ASP.NET AJAX page methods have to be static?)