提交后报错,断点看ViewStat值没有了。排查半天彻底不知道怎么回事。ide
百度搜索了下ViewState提交丢失。而后CSDN一个帖子说的半拉子话提点了我。函数
而后想到我常常重写这些函数。之前怎么没遇到。而后检查代码改写后解决,虽然不知道怎么回事,但解决了。spa
原代码以下:code
protected override void OnInit(EventArgs e) { base.OnInit(e); if (!IsPostBack) { vOrderID = Convert.ToInt32(Request.QueryString["OrderID"]); } } protected int vOrderID { get { return (ViewState["vOrderID"] == null) ? 0 : Convert.ToInt32(ViewState["vOrderID"]); } set { ViewState["vOrderID"] = value; } }
就出在第一个函数上。改为以下放到OnPreLoad就对了。blog
protected override void OnPreLoad(EventArgs e) { base.OnPreLoad(e); if (!IsPostBack) { vOrderID = Convert.ToInt32(Request.QueryString["OrderID"]); } } protected int vOrderID { get { return (ViewState["vOrderID"] == null) ? 0 : Convert.ToInt32(ViewState["vOrderID"]); } set { ViewState["vOrderID"] = value; } }
备忘,同时但愿能给你们提供帮助。get