【问题标题】:asp.net bypass dynamically loaded page to get to targetasp.net 绕过动态加载页面到达目标
【发布时间】:2015-03-27 00:15:27
【问题描述】:

背景:

  • 现有的 asp.net web 应用程序采用了一些动态加载的用户 控件和页面
  • 其中许多页面和用户控件依赖于父页面上下文
  • 包含“版本 2”应用程序的新项目需要与上述生产中的旧版本集成,而“版本 2”仍在继续开发中

场景: 我正在使用带有参数化 URL 的 response.redirect 从“版本 2”页面导航回动态加载的旧页面 - 如果您愿意的话,可以是“页面 1”。这工作正常。但是,最终目标/目标是直接导航到动态加载的遗留页面,该页面距离初始目标“2 次点击”。 “点击”将来自动态呈现的控件。

问题: 是否可以从代码隐藏中的“版本 2”页面直接导航到这个最终目标?当我在初始重定向的调用堆栈之后立即在代码中调用用户单击过程时,它仍然使我进入旧版页面 1。

因此,在处理直接导航几个“跳”到动态加载的页面方面,基本问题更具概念性。换句话说,是否可以在动态控件的代码隐藏中控制导航,而无需将它们实际呈现回屏幕上的客户端?

非常感谢任何帮助让我摆脱这个僵局。

/约翰

【问题讨论】:

  • 过于模糊和误导 - 深入研究现有源代码后,动态页面导航/渲染问题已得到解决

标签: asp.net user-controls response.redirect


【解决方案1】:

问题的症结在于如何从应用程序中需要多次点击事件(即多次往返)的点到达动态生成的目标页面,并在代码隐藏中将其减少为一次往返。

在不渲染的情况下在代码隐藏中调用连续点击事件会递归地违反页面生命周期。

基本上,连续点击事件不能在 1 次往返中利用 - 解决方案是利用相关的底层过程调用,和/或编写新的调用以产生目标页面。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多