2009-12-18 47 views
3

我需要能够从VB.NET类(而不是用户控件)中判断当前请求是否是回发和/或回调( AJAX)。在过去,我已经能够通过HttpContext.Current获取有关请求,响应,会话等的信息,但是我一直无法在HttpContext.Current中找到Page对象。从VB.NET类中检查IsPostBack或IsCallBack的方法

这可能吗?

+1

用户控件是一个类 – 2009-12-18 18:02:15

+0

@TwoBears - 的确如此,但在用户控件中,您可以轻松访问IsPostBack变量,这与普通类不是用户控件(例如MyClass.vb而不是MyControl) ascx.vb)你没有那么容易访问这些变量。 – Adam 2009-12-18 18:15:03

回答

6

HttpContext.Current.Handler将返回一个System.Web.IHandler,它可能碰巧是一个System.Web.UI.Page。使用as运算符将其转换为页面,并且在使用它之前一定要检查它是否为空。

+0

这是完美的!谢谢! – Adam 2009-12-21 19:14:13

+0

不适用于MVC – Alex 2012-09-12 22:07:02

3

踢腿如何获得页面对象,你有没有考虑过只检查请求对象中的HTTP方法是否为“POST”?