コード例 #1
0
        public ActionResult JsonRegister(RegisterModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                // Attempt to register the user
                try
                {
                    WebSecurity.CreateUserAndAccount(model.UserName, model.Password);
                    WebSecurity.Login(model.UserName, model.Password);

                    InitiateDatabaseForNewUser(model.UserName);

                    FormsAuthentication.SetAuthCookie(model.UserName, createPersistentCookie: false);
                    return Json(new { success = true, redirect = returnUrl });
                }
                catch (MembershipCreateUserException e)
                {
                    ModelState.AddModelError("", ErrorCodeToString(e.StatusCode));
                }
            }

            // If we got this far, something failed
            return Json(new { errors = GetErrorsFromModelState() });
        }
コード例 #2
0
        public object registerUser(string username, string pass, string email, string name, string phone, string roles)
        {
            RegisterModel model = new RegisterModel();
            model.UserName = username;
            model.Password = pass;
            model.ConfirmPassword = pass;

            try
            {
                WebSecurity.CreateUserAndAccount(
                        model.UserName,
                        model.Password,
                        new { Phone = phone, Email = email, Name = name, Photo = "unknown_person.jpg" },
                        false
                    );

                //===================================================================================
                string[] rolesArr = roles.Split(',');
                Data.DataAccess cls = new Data.DataAccess();
                string sql, m;

                sql = "select max(UserId) from UserProfile";
                DataSet ds = new DataSet();
                m = cls.getData(sql, ref ds);

                int userid = Convert.ToInt32(ds.Tables[0].Rows[0][0]);

                if (rolesArr.Length > 0)
                {
                    for (int i = 0; i < rolesArr.Length; i++)
                    {
                        sql = "insert into webpages_UsersInRoles (UserId,RoleId) values (" + userid.ToString() + ", " + rolesArr[i].ToString() + ")";
                        m = cls.exeQuery(sql);
                    }
                }
                //===========================================================================================
                return "done";
            }
            catch (MembershipCreateUserException e)
            {
                return e.InnerException.ToString();
                //ModelState.AddModelError("", ErrorCodeToString(e.StatusCode));
            }
        }