我用vs2005里自带的登录控件CreateUserWizard(创建用户的控件),自己加了一个验证码的验证,把验证码验证代码写在了创建用户之前的事件CreatingUser中
现在的问题是,如果用户输入的严重码不正确,我想就停止注册,回到注册页面
现在我用的是Response.Redirect("~/reg.aspx")
能行,但无法保持控件状态,就是viewstate
怎么办?除了手写代码存入viewstate之外,有没有什么好办法?

解决方案 »

  1.   

    Response.Redirect("~/reg.aspx") 换成 Server.Transfer("reg.aspx");
      

  2.   

    吧HTML标签变成runt="server" 可以解决这个问题
      

  3.   

    ViewState只能在本页与服务器之间传值用。Response.Redirect("~/reg.aspx") 换成 Server.Transfer("reg.aspx"); 
    这种办法可以。此外还可以用QueryString或者Cookie及Session之类的来传值。
      

  4.   

    何须重定向,在注册的方法中直接return就可以了;
      

  5.   

    用 Server.Transfer("reg.aspx"); 
      

  6.   

    用 Server.Transfer("reg.aspx"); 可以
      

  7.   

    Server.Transfer("reg.aspx")不行!我一开始就用的这个可不可以用JavaScript实现?
      

  8.   

    页面跳转就不能用ViewState了,可以使用Session,Application等
      

  9.   

    如果是判断验证码错误后不能注册,那应该不需要跳转啊?在判断事件CreatingUser中
    if(错误)
       return;
    不就可以了?
      

  10.   


    估计你是正解我一直对return就没搞清楚过!