c将公共字符串传递到函数中

本文关键字:函数 字符串 | 更新日期: 2023-09-27 17:58:39

我有下面的代码,正在尝试访问lnkSave_Click函数中的'text'字符串,但文本似乎无法从lnkSave_Click函数访问,它似乎总是空的。

private string _text = "";
    public string text
    {
        get { return _text; }
        set { _text = value; }
    }

protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
             text = "Hello World!";
            }
        }
protected void lnkSave_Click(object sender, EventArgs e)
        {
            if (text == "Hello World!")
            {
            ... do things..
            }
        }

c将公共字符串传递到函数中

当它为空时,是可访问的。它之所以总是空的,是因为它是一个字段。ASP.NET页中的每个对象都在生命周期结束时被释放。因此,它将在每次回发时使用""进行初始化。

您可以使用ViewState来保持值:

public string text
{
    get { if(ViewState["text"]==null)ViewState["text"]=""; return (String)ViewState["text"]; }
    set { ViewState["text"] = value; }
}

在ASP.NET应用程序中管理持久用户状态的九个选项