gpt4 book ai didi

c# - ASP.Net C# 变量不存储在网页上

转载 作者:行者123 更新时间:2023-11-30 19:42:36 24 4
gpt4 key购买 nike

所以我有代码..

int var1 = 0;

protected void cmdvar1_Click(object sender, EventArgs e)
{
var1= var1+ 10;
lblvar1.Text = var1.ToString();
}

当点击这个时,它很棒......它接受 int,向它添加 10,然后显示它......但是它不会显示超过 10,玩了一些并得出结论,它不是因为标签没有更新,它只是没有将 10 添加到变量的前 10 个。我究竟做错了什么?我错过了什么?我是否需要将变量信息存储在 cookie 或其他东西中?

最佳答案

这是由于 ASP.NET 的生命周期。在网页后面存储私有(private)字段与在 WinForms 中的工作方式不同。如果你想在回发中保留信息,你需要将它存储在一些持久存储中,即 Session/ViewState/Database 等。

private int var1 = 0;

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
// load var1 from cache
Int32.TryParse((Session["var1"] ?? 0).ToString(), out var1);
}
}

protected void cmdvar1_Click(object sender, EventArgs e)
{
var1 += 10;
Session["var1"] = var1; // cache var1
lblvar1.Text = var1.ToString();
}

关于c# - ASP.Net C# 变量不存储在网页上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17224355/

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