在OnClick中访问属性时出现Null引用异常

1 c# asp.net app-code

请帮我弄清楚这段代码有什么问题:

我有一个ASP.NET页面,其中一个按钮可见.

当用户单击它时 - 它的实例MyClass(它的实现位于AppCode目录中)并变为不可见(button2变为可见).

当我单击button2时,它会引发"对象引用未设置为对象的实例"异常.

什么似乎是问题?

{
    public MyClass noviTest;

    protected void Page_Load(object sender, EventArgs e)
    {
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        noviTest = new MyClass(TextBox1.Text);
        Button1.Visible = false;
        Button2.Visible = true;
    }

    protected void Button2_Click(object sender, EventArgs e)
    {
        Label1.Text=noviTest.getID; //this is the critical line
    }
}
Run Code Online (Sandbox Code Playgroud)

San*_*nen 5

因为在回发时,不会重新创建对MyClass的noviTest引用.

您可以将其添加到视图状态以保持对它的引用.(假设MyClass是可序列化的).
在Button1_Click中:

ViewState("noviTest") = noviTest;
Run Code Online (Sandbox Code Playgroud)

然后在Button2_Click中:

var noviTest = ViewState("noviTest");
Run Code Online (Sandbox Code Playgroud)

  • 谢谢.我试过这个和错误sais"名称'ViewState'在当前上下文中不存在"??? (2认同)