C# 根据条件绕过页面

C# 根据条件绕过页面,c#,asp.net,session,C#,Asp.net,Session,这是我的加载会话和保存会话值功能。如何保留所选值,并在选中时使用它“跳过”特定页面?谢谢大家! protected override void LoadSessionValues() { if (Session["ddlClassification"] != null) { ddlClassification.SelectedValue = (String)Session["ddlClassification"];

这是我的加载会话和保存会话值功能。如何保留所选值,并在选中时使用它“跳过”特定页面?谢谢大家!

 protected override void LoadSessionValues()
    {
       if (Session["ddlClassification"] != null)
        {
            ddlClassification.SelectedValue = (String)Session["ddlClassification"];
        }
    }

  protected override void SaveSessionValues()
    {
        Session["ddlClassification"] = ddlClassification.SelectedValue;
    }
根据下面的评论更新

在page1.aspx中

protected void Page_Load(object sender, EventArgs e)
{
    if (Session["ddlClassification"].ToString() == "valueToCheckFor" || Session["ddlClassification"] == null)
    {
    Response.Redirect("someOtherPage.aspx", false);
    }
}
根据下面的评论更新

在page1.aspx中

protected void Page_Load(object sender, EventArgs e)
{
    if (Session["ddlClassification"].ToString() == "valueToCheckFor" || Session["ddlClassification"] == null)
    {
    Response.Redirect("someOtherPage.aspx", false);
    }
}

我是否要跳过此页面?这取决于页面的流量。如果您要从第1页转到第2页再转到第3页,并且希望有条件地跳过第2页,它将进入第1页的eventhandler中。
@Chris Bint
如果用户在地址栏中键入
whater.com/page1.aspx
,并点击enter,该怎么办?(假设
会话[“ddlclassion”]
which.com/default.aspx
上初始化,并且有一个值指示必须跳过page1.aspx)你的代码如何阻止用户导航到禁止的URL。请在你要“跳过”的页面的页面加载中添加一个检查,该检查将重定向到他们确实有权访问的页面。但是,如果他们直接转到第1页而不访问default.aspx,则根本没有任何值,您也需要对此进行检查。这意味着他必须是所有者,或者至少有权更改第1页、第2页等的来源。我是否要跳过此页?这取决于您的页面流。如果您要从第1页转到第2页再转到第3页,并且希望有条件地跳过第2页,它将进入第1页的eventhandler中。
@Chris Bint
如果用户在地址栏中键入
whater.com/page1.aspx
,并点击enter,该怎么办?(假设
会话[“ddlclassion”]
which.com/default.aspx
上初始化,并且有一个值指示必须跳过page1.aspx)你的代码如何阻止用户导航到禁止的URL。请在你要“跳过”的页面的页面加载中添加一个检查,该检查将重定向到他们确实有权访问的页面。但是,如果他们直接进入page1而不访问default.aspx,则根本没有任何值,您也需要对此进行检查。这意味着他必须是page1、page2等的所有者,或者至少有权更改其来源……如果所有这些页面都是您域的一部分,并且您有权更改来源。将检查条件添加到每个页面。如果所有这些页面都是您域的一部分,并且您有权更改源,请使用查询字符串传递值。将检查条件添加到每个页面。并使用查询字符串传递值