registeruser.cs

来自「ASP.NET简洁论坛源代码 这是一个简单的论坛」· CS 代码 · 共 76 行

CS
76
字号
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.Security;
using NetFocus.Web.Core;

namespace NetFocus.Web.Applications.Forum
{
    [ParseChildren(true)]
    public class RegisterUser : UserControl
    {
		#region Private Members

        private WebContext context = WebContext.Current;
        private NameValueCollection formData;
        
		#endregion

        protected override void OnLoad(EventArgs e)
        {
            if (this.Page.IsPostBack)
            {
                formData = context.HttpContext.Request.Form;
                if (!ValidateAuthCode(formData))
                {
                    Globals.ShowMessage(Page, "AuthCodeError", "验证码输入不正确!");
                    return;
                }

                ForumUser user = GetUserFromForm(formData);

                CreateNewUser(user);

                context.User = user;

                UserCookie.SaveCookie(FormsAuthentication.GetAuthCookie(user.UserName, false), 30);

                Context.Response.Redirect(SiteUrls.Instance().Home, true);

            }
        }

        private bool ValidateAuthCode(NameValueCollection formData)
        {
            if (context.HttpContext.Request.Cookies["AuthCode"] != null && context.HttpContext.Request.Cookies["AuthCode"].Value != null && context.HttpContext.Request.Cookies["AuthCode"].Value == formData["number"])
            {
                return true;
            }
            return false;
        }
        private ForumUser GetUserFromForm(NameValueCollection formData)
        {
            ForumUser user = new ForumUser();

            user.UserName = formData["User_Account"];
            user.Email = formData["User_Email"];
            user.Password = formData["User_Password"];

            return user;
        }
        private void CreateNewUser(ForumUser user)
        {
            Users.Create(user);
            Users.CreateUserDefaultRoles(user);
            user.SetRoles(NetFocus.Web.Core.Configuration.Instance.RegisteredDefaultRoleList);
            BusinessManager.SetUserDefaultAvatar(user);
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?