List<Model.Board> boardList = new List<Model.Board>();
        boardList = xxxxx.GetModelList(); //此方法获得一个实体list的cache
        //给实体List添加一个项目显示,Model.Board是一个实体类
        Model.Board model = new Model.Board();
        model.BoardName = "全部";
        model.BoardID = 0;
        boardList.Insert(0, modelBoard);        rptBoardNav.DataSource = boardList;
        rptBoardNav.DataBind();
此程序,页面每刷新一次,就多了一个“全部”,也就是每次 boardList.Insert,都会更新了Cache
为什么会这样?如何才能insert的时候不更新cache?

解决方案 »

  1.   

    Insert会导致页面刷新,你在窗体加载的if(!IsPostback){}中调用该方法,应该不会再更新你那Cache
      

  2.   

    是不是还有个setat()的方法呢?
      

  3.   


    如果在页面上随便放一个 Button,点击它时你的程序也执行 rptBoardNav.DataBind();那你就在乱写asp.net程序了。当点击Button时,别人的正常程序就是处理 IsPostback 的,所以从来不胡乱重复绑定数据。