Exemplo n.º 1
0
        public async Task <IHttpActionResult> Register(RegisterBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Data.posDBDataContext db = new Data.posDBDataContext();

            var currentUser = from d in db.MstUsers where d.UserName.Equals(model.UserName) select d;

            if (!currentUser.Any())
            {
                return(BadRequest("Username does not exist."));
            }

            var user = new ApplicationUser()
            {
                UserName = currentUser.FirstOrDefault().UserName, Email = currentUser.FirstOrDefault().UserName
            };
            IdentityResult result = await UserManager.CreateAsync(user, currentUser.FirstOrDefault().Password);

            if (!result.Succeeded)
            {
                return(GetErrorResult(result));
            }

            string registeredAspUserId = user.Id;

            if (currentUser.Any())
            {
                var updateCurrentUser = currentUser.FirstOrDefault();
                updateCurrentUser.AspNetUserId = registeredAspUserId;
                db.SubmitChanges();
            }

            return(Ok());
        }