gpt4 book ai didi

c# - 全局静态变量不改变值

转载 作者:太空宇宙 更新时间:2023-11-03 22:37:24 28 4
gpt4 key购买 nike

我正在尝试制作一个应用程序,管理员可以在其中更改一些全局值,这将影响每个用户的应用程序。

我试着用静态

public static class Inventario
{
public static int FiltroEtiquetas;

public static int NumLocalizacoes;

public static void GetInventario()
{

}
}

页面

protected void Page_Load(object sender, EventArgs e)
{

txtFiltroEtiquetas.Text = Inventario.FiltroEtiquetas.ToString();
txtNumLocalizacoes.Text = Inventario.NumLocalizacoes.ToString();
}
protected void btnSaveInventaryChanges_Click(object sender, EventArgs e)
{

Inventario.FiltroEtiquetas = Convert.ToInt32(txtFiltroEtiquetas.Text);
Inventario.NumLocalizacoes = Convert.ToInt32(txtNumLocalizacoes.Text);
Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "ShowToast('OK', 'topCenter','success', 'Alterações Guardadas com sucesso.', '2000')", true);
}

每当我打开模式时,值始终为 0,它不会保存更改

最佳答案

在页面加载时,您正在使用全局变量重置两个文本框,而在单击按钮时,您正在执行反向操作,因此它是一种重置。这就是您看到 0 值的原因。

您需要从 page_load 中删除代码,或者您需要对其应用一些条件。

你可以这样实现:

protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
txtFiltroEtiquetas.Text = Inventario.FiltroEtiquetas.ToString();
txtNumLocalizacoes.Text = Inventario.NumLocalizacoes.ToString();
}
}

关于c# - 全局静态变量不改变值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54304456/

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