嵌套用户控件上的“请求在此上下文中不可用”

时间:2010-07-28 06:27:12

标签: asp.net httprequest httpexception

我有三个对象:

  • 包含
  • 的网页
  • 包含
  • 的用户控件(A)
  • 另一个用户控件(B)

该场景是用户控件A中的一个事件被调用,这里仍然可以访问Request对象。但在该调用期间,我尝试通过用户控件B,用户控件A的子类再次调用Request,并开始抛出“请求在此上下文中不可用”。

Request对象是否仅限于事件调用者?

示例代码:

    protected void MainGridPanel_RowClicked( object sender, EventArgs e )
    {
        int id = 1

        windowedModuleDetailList.ModuleDetailListPresenter.GetById( id );
        moduleDetailWindow.Show();
    }
在这种情况下,

moduleDetailWindow是子控件B.与Show方法内部的代码完成无关,因为当它进入其范围时,我会在调试期间进行检查,并且Request对象已经无法访问。

编辑: 由于一些外部工具,使用HttpContext.Current.Request不是一个选项。我真的很想知道为什么Request对子控件不可见。

1 个答案:

答案 0 :(得分:1)

您始终可以使用HttpContext.Current.Request在当前Http上下文中调用Request对象。如果您使用的是这种语法,请发布您的代码,以便我们查看并提出解决方案。