前往顾页
以后地位: 主页 > 收集编程 > .Net实例教程 >

若何记录页面操纵状况

时候:2018-11-08 20:50来源:知行网www.zhixing123.cn 编辑:麦田守望者

在项目中,很多时候我们需求晓得功课现在的操纵状况,比如是功课现在是处于新增状况,还是点窜状况,或是考核状况,以下是自己在项目中的一点小经历。

所有的功课都会也应当继承同一个顶级基类,不合以后功课是不是是直接继承顶级基类,归正应当是基类派生而来。

现在我们所要作的操纵状况,便可以在基类中完成。

在基类中新建一个页面状况的属性,以下:
 

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了。

以上代码只是表示自己的思路,并未颠末测试。详细利用中,则需求本身细细的调试了。"

------分开线----------------------------
标签(Tag):C# 若何记录页面操纵状况
------分开线----------------------------
保举内容
猜你感兴趣