gpt4 book ai didi

asp.net - IsPostBack 总是返回 false

转载 作者:行者123 更新时间:2023-12-01 07:00:58 24 4
gpt4 key购买 nike

我遇到了一个奇怪的问题。每次刷新页面,IsPostBack是假的。
为了确保我的内容或母版页中没有任何内容导致这种情况,我创建了一个空的 Web 表单并在 Debug模式下启动它。仍然,在回发时,我有 IsPostBack设置为假。

我有 enableSessionState="true"<sessionState timeout="30" />在 web.config 中。

快把我逼疯了!

更新:我按 F5 刷新页面。根据答案,这不应导致回发。我想知道用户何时刷新页面(甚至手动)并防止对 db 进行一些修改)。
有解决方案吗?

最佳答案

刷新页面(按 F5 或浏览器中的刷新按钮)不是回发。单击按钮、更改下拉列表或页面上的某些其他事件导致数据发送到服务器(通过 HTTP POST,因此称为“回发”)时会发生回发

您的问题并不清楚您是手动刷新页面还是通过单击按钮或其他事件发回服务器。

由于您是手动刷新页面,IsPostBack永远是假的。

ASP.NET 中有两种类型的请求(在某种意义上):

  • 常规请求(例如用户第一次加载页面)
  • 回发(例如点击页面上的按钮,将数据发送到服务器)

  • 如果您想在任何一种情况下跟踪用户之前是否访问过某个页面,您都需要自己跟踪。您可以在 Session 中设置一个变量来执行此操作:
    Session["UserHasVisitedThisPageBefore"] = true;

    然后你可以检查它代替你当前的 IsPostBack查看:
    if(Session["UserHasVisitedThisPageBefore"] != null && (bool)Session["UserHasVisitedThisPageBefore"])
    {
    // stuff here
    }

    关于asp.net - IsPostBack 总是返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6614097/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com