欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » ASP.Net » 正文

热门阅读

关于如何记录页面操作状态的心得

创建时间:2011年07月01日 21:35  阅读次数:(5142)
分享到:
在项目中,很多时候我们需要知道作业现在的操作状态,比如是作业现在是处于新增状态,还是修改状态,或者是审核状态,以下是本人在项目中的一点小经验。

所有的作业都会也应该继承同一个顶级基类,不同当前作业是不是直接继承顶级基类,反正应该是基类派生而来。

现在我们所要作的操作状态,就可以在基类中完成。

在基类中新建一个页面状态的属性,如下:
protected FormeState FormOperateState
{
    get
    {
        object o = ViewState["FormOperateState"];
        if (o == null)
        {
            ViewState["FormOperateState"] = FormeState.Add;
        }

        return ViewState["FormOperateState"] as FormeState;
    }
    set { ViewState["FormOperateState"] = value; }
}

其中FormeState为页面状态的枚举:
public enum FormeState
{
    Add,
    Modify
}

在基类的IsPostBack中获取Url中参数FormOperateState的值,这需要我们在Url参数中传递正确的FormOperateState值,比如用户是点击新增进入到该作业的,FormOperateState=Add,如果是点击修改进入到该作业的,那么FormOperateState=Modify
if (IsPostBack)
{
    if (!String.IsNullOrEmpty(Request.QueryString["FormOperateState"]))
    {
        FormOperateState = Enum.Parse(typeof(FormeState), Request.QueryString["FormOperateState"], true);
    }
}

这样子我们就可以在页面加载时初始化作业状态了。
因为我们使用了ViewState存储,所以在作业的任何时候都可以很方便的更改操作状态。比如Url中参数FormOperateState的值传进来的Add状态,但我们新增作业并保存后,就需要将操作更改为Modify状态了,那么在保存方法后紧跟FormOperateState=FormeState.Modify就OK了。

以上代码只是表现本人的思路,并未经过测试。具体使用中,则需要自己细细的调试了。"
来源:.net学习网
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论0条
  • 暂无任何评论,请留下您对本文章的看法,共同参入讨论!
发表评论:
留言人:
内  容:
请输入问题 58+23=? 的结果(结果是:81)
结  果: