删除列表的元素<int>使用 asp.net 中的视图状态



我遇到一个关于视图状态的问题。下面是我的代码:

public List<int> ListId
{
     get
     {
         return (List<int>)ViewState["ListId"];
     }
     set
     {
         ViewState["ListId"] = value;
     }
 }
protected void btAdd_Click(object sender, EventArgs e)
{
    ViewState.Remove("ListId");
    foreach (TreeNode tn in tvFAQ.CheckedNodes)
    {
        if (tn.Checked)
        {
            Id = tn.ValuePath;
            ListId = PassId.ListId(Id);
        }
     }
     if(ListId!=null)
     {
        ListById();
     }
}

在函数ListById()中,我将使用"ListId"。Count",但是ListId的元素不能被删除,所以当我在一个页面中这样做时,ListId的元素会自动增加,直到我关闭页面。请帮助我删除ListId元素后,我点击按钮"添加"。非常感谢。

应该删除

你可以试试这个

ViewState["ListId"] = null;

最新更新