List.Add重置在asp.net上

时间:2015-12-09 14:56:01

标签: c# asp.net visual-studio

我尝试在asp.net中的List<>类中添加动态项。在Winforms它可以工作,但在ASP.NET上它没有。 这是我的代码。

class artikuj
{
    public int artId { get; set; }
    public double sasia { get; set; }
}

List<artikuj> art = new List<artikuj>();

protected void btn_Click(object sender, EventArgs e)
{
    try
    {
        art.Add(new artikuj
        {
            artId = int.Parse(DropDownListArikujt.SelectedValue),
            sasia = double.Parse(tbSasia.Text)
        });

        Label1.Text = art.Count.ToString();
    }
    catch(Exception ex)
    {
        Response.Write(ex);
    }

}

每次按下按钮,列表都会重置并添加新项目。 知道为什么会出现这个错误吗?我尝试过但没有成功。 :/

1 个答案:

答案 0 :(得分:3)

这是人们习惯于编写桌面应用程序并转而创建Web应用程序的第一件事。 看起来就像所有编码应该是相同的,但是你学到的第一件事 - ASP.NET是无状态的。

这意味着每次有新请求进入您的页面时,都会创建一个新的页面实例,以及您实例持有的项目列表。

ASP.NET中有many ways to maintain state between requests,但它们要广泛而广泛地提供答案。您可以先查看Getting started with ASP.NET