예제 #1
0
        public async Task <IActionResult> Register(RegisterViewModel vm, string returnUrl = "/Account/Index")
        {
            if (ModelState.IsValid)
            {
                var user = new Controllers.User
                {
                    Id       = Accounts.Count > 0 ? Accounts.Max(m => m.Id) + 1 : 0,
                    UserName = vm.UserName,
                    Password = vm.Password
                };
                Accounts.Add(user);
                await HttpContext.Authentication.SignInAsync(CookieAuthenticationScheme, CreateClaimsPrincipalAsync(user));                   // TODO 总结 ClaimsPrincipal 实例的创建

                return(Redirect(returnUrl));
            }
            return(View());
        }
예제 #2
0
 public User(Controllers.User user)
 {
     IsFriend            = user.IsFriend;
     PrefNoProfanity     = user.ProfanityFilter;
     IsSuspended         = user.IsSuspended;
     HasGoldSubscription = user.HasGoldSubscription;
     NumFriends          = user.NumFriends;
     Verified            = user.IsVerified;
     NewModmailExists    = user.HasNewModmail;
     Id               = user.Id;
     Over18           = user.Over18;
     IsGold           = user.IsGold;
     IsMod            = user.IsMod;
     HasVerifiedEmail = user.HasVerifiedEmail;
     IconImg          = user.IconImg;
     HasModMail       = user.HasModmail;
     LinkKarma        = user.LinkKarma;
     InboxCount       = user.InboxCount;
     HasMail          = user.HasMail;
     Name             = user.Name;
     Created          = user.Created;
     CommentKarma     = user.CommentKarma;
     HasSubscribed    = user.HasSubscribed;
 }