zoukankan      html  css  js  c++  java
  • CreateUserWizard控件的详细使用说明(2)

    1.3.3  用户自动重定向来源页面

    当用户通过页面Login.aspx中的表单成功登录后,将会自动地重定向回其请求的来源页面。另外,CreateUserWizard控件并不能自动地重定向到任何位置。如果你希望CreateUserWizard控件能像Login控件那样工作,则需要编写一定的代码。

    代码清单1-19中的Login控件包含了一个用于连接到用户注册页面CreateUserWizard- Returen.aspx上的链接。在Page_Load()事件处理函数中,查询字符串参数ReturnUrl将被添加到该注册页面的链接上。

    代码清单1-19  LoginReturn.aspx

    <%@ Page Language="C#" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <script runat="server">

        protected void Page_Load(object sender, EventArgs e)

        {

            if (!Page.IsPostBack)

            {

                string dest = Request.QueryString["ReturnUrl"];

                Login1.CreateUserUrl = "~/CreateUserWizardReturn.aspx?ReturnUrl=" + Server.UrlEncode(dest);

            }

        }

    </script>

    <html xmlns="http://www.w3.org/1999/xhtml" >

    <head id="Head1" runat="server">

        <title>Login Return</title>

    </head>

    <body>

        <form id="form1" runat="server">

        <div>

        <asp:Login

            id="Login1"

            CreateUserText="Register"

            CreateUserUrl="~/CreateUserWizardReturn.aspx"

            Runat="server" />

        </div>

        </form>

    </body>

    </html>

    在使用代码清单1-19中的页面之前,需要将该页面重命名为Login.aspx。如果未认证用户访问了需要认证才能访问的页面,那么该用户访问请求就会被自动重定向到页面Login.aspx上,并且ReturnUrl参数也会自动添加到页面Login.aspx的访问路径之后。

    代码清单1-20中的页面包含了一个CreateUserWizard控件,以及一个名为Page_Load()的事件处理函数。查询字符串参数ReturnUrl的值用来指定重定向时用户将会返回的原始请求页。

    代码清单1-20  CreateUserWizardReturn.aspx

    <%@ Page Language="C#" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <script runat="server">

        void Page_Load()

        {

            if (!Page.IsPostBack)

            {

                string dest = "~/Default.aspx";

                if (!String.IsNullOrEmpty(Request.QueryString["ReturnURL"]))

                    dest = Request.QueryString["ReturnURL"];

                CreateUserWizard1.ContinueDestinationPageUrl = dest;

            }

        }

    </script>

    <html xmlns="http://www.w3.org/1999/xhtml" >

    <head id="Head1" runat="server">

        <title>CreateUserWizard Return</title>

    </head>

    <body>

        <form id="form1" runat="server">

        <div>

        <asp:CreateUserWizard

            id="CreateUserWizard1"

            Runat="server" />

        </div>

        </form>

    </body>

    </html>

    From:

    http://rusti.blogbus.com/logs/38025641.html

  • 相关阅读:
    初探Java设计模式2:结构型模式(代理模式,适配器模式等)
    初探Java设计模式1:创建型模式(工厂,单例等)
    Java集合详解8:Java集合类细节精讲,细节决定成败
    Java集合详解7:一文搞清楚HashSet,TreeSet与LinkedHashSet的异同
    MySQL教程67-使用DISTINCT过滤重复数据
    MySQL教程66-数据表查询语句
    MySQL教程65-MySQL操作表中数据
    MySQL教程64-MySQL 流程控制函数
    MySQL教程63-MySQL 聚合函数
    MySQL教程62-MySQL日期和时间函数
  • 原文地址:https://www.cnblogs.com/CodingPerfectWorld/p/1912442.html
Copyright © 2011-2022 走看看