#pragma warning disable CS1998 // Async method lacks 'await' operators and will run synchronously public async Task <IHttpActionResult> EditUserInfo(UpdateBindingModel model) #pragma warning restore CS1998 // Async method lacks 'await' operators and will run synchronously { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } UserService _UserService = new UserService(Guid.Parse(User.Identity.GetUserId())); UserInfoEdit updateUser = new UserInfoEdit() { Email = model.Email, OrganizationName = model.OrganizationName, FirstName = model.FirstName, LastName = model.LastName, PhoneNumber = model.PhoneNumber, State = model.State, Address = model.Address, Zip = model.Zip, City = model.City }; bool result = _UserService.UpdateUser(updateUser); if (!result) { return(InternalServerError()); } return(Ok()); }
public ActionResult Edit(UserInfoEdit user) { if (ModelState.IsValid) { HttpPostedFileBase file = Request.Files["Image"]; var service = CreateUserInfoService().UpdateUserInfo(user, file); if (service) { return(RedirectToAction("Index")); } else { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } } return(View(user)); }
public bool UpdateUserInfo(UserInfoEdit model, HttpPostedFileBase file) { model.ProfileImage = ConvertToBytes(file); using (var ctx = new ApplicationDbContext()) { var entity = ctx .UsersInfo .Single(e => e.Id == _userID); entity.Name = model.Name; entity.Username = model.Username; entity.Bio = model.Bio; entity.Location = model.Location; entity.ProfileImage = model.ProfileImage; entity.Interests = model.Interests; entity.DateModified = DateTimeOffset.UtcNow; return(ctx.SaveChanges() == 1); } }
public bool UpdateUser(UserInfoEdit model) { using (var ctx = new ApplicationDbContext()) { var entity = ctx .Users .Single(e => e.Id == _creatorId.ToString()); entity.Email = model.Email; entity.OrganizationName = model.OrganizationName; entity.FirstName = model.FirstName; entity.LastName = model.LastName; entity.PhoneNumber = model.PhoneNumber; entity.State = model.State; entity.Address = model.Address; entity.Zip = model.Zip; entity.City = model.City; return(ctx.SaveChanges() == 1); } }
public async Task <IActionResult> EditInfo([FromBody] UserInfoEdit userInfoEdit) { //如果HttpContext.User.Identity.IsAuthenticated为true, //或者HttpContext.User.Claims.Count()大于0表示用户已经登录 //TODO 编辑个人信息 int userId = -1; if (HttpContext.User.Identity.IsAuthenticated) { //这里通过 HttpContext.User.Claims 可以将我们在Login这个Action中存储到cookie中的所有 //claims键值对都读出来,比如我们刚才定义的UserName的值Wangdacui就在这里读取出来了 userId = int.Parse(HttpContext.User.Claims.ElementAt(0).Value); } else { //TODO //进入到这部分意味着用户登录态已经失效,需要返回给客户端信息,即需要登录。 RestfulResult.RestfulData rr = new RestfulResult.RestfulData(); rr.Code = 200; rr.Message = "Need Authentication"; return(new JsonResult(rr)); } return(await Wrapper.wrap(async (OracleConnection conn) => { if (!(ParameterChecker.CheckPara(userInfoEdit.password, ParameterChecker.ParaTpye.Password) || userInfoEdit.password == "")) { return new JsonResult(new RestfulResult.RestfulData(200, "Invalid Password")); } if (!(ParameterChecker.CheckPara(userInfoEdit.gender, ParameterChecker.ParaTpye.Gender) || userInfoEdit.gender == "")) { return new JsonResult(new RestfulResult.RestfulData(200, "Invalid Gender")); } //FUNC_SET_USER_INFO //(nickname in VARCHAR, self_introduction in VARCHAR, password in VARCHAR, realname in VARCHAR, gender in VARCHAR,id in INTEGER, mode in INTEGER) //return INTEGER int mode = 0; string procedureName = "FUNC_SET_USER_INFO"; OracleCommand cmd = new OracleCommand(procedureName, conn); cmd.CommandType = CommandType.StoredProcedure; OracleParameter p1 = new OracleParameter(); p1 = cmd.Parameters.Add("state", OracleDbType.Int32); p1.Direction = ParameterDirection.ReturnValue; OracleParameter p2 = new OracleParameter(); p2 = cmd.Parameters.Add("nickname", OracleDbType.Varchar2); p2.Direction = ParameterDirection.Input; p2.Value = userInfoEdit.nickname; if (userInfoEdit.nickname != "") { mode |= 1 << 0; } OracleParameter p3 = new OracleParameter(); p3 = cmd.Parameters.Add("introduction", OracleDbType.Varchar2); p3.Direction = ParameterDirection.Input; p3.Value = userInfoEdit.self_introduction; if (userInfoEdit.self_introduction != "") { mode |= 1 << 1; } OracleParameter p4 = new OracleParameter(); p4 = cmd.Parameters.Add("password", OracleDbType.Varchar2); p4.Direction = ParameterDirection.Input; p4.Value = userInfoEdit.password; if (userInfoEdit.password != "") { mode |= 1 << 2; } OracleParameter p5 = new OracleParameter(); p5 = cmd.Parameters.Add("realname", OracleDbType.Varchar2); p5.Direction = ParameterDirection.Input; p5.Value = userInfoEdit.realname; if (userInfoEdit.realname != "") { mode |= 1 << 3; } OracleParameter p6 = new OracleParameter(); p6 = cmd.Parameters.Add("gender", OracleDbType.Varchar2); p6.Direction = ParameterDirection.Input; p6.Value = userInfoEdit.gender; if (userInfoEdit.gender != "") { mode |= 1 << 4; } OracleParameter p7 = new OracleParameter(); p7 = cmd.Parameters.Add("user_id", OracleDbType.Int32); p7.Direction = ParameterDirection.Input; p7.Value = userId; OracleParameter p8 = new OracleParameter(); p8 = cmd.Parameters.Add("mode", OracleDbType.Int32); p8.Direction = ParameterDirection.Input; p8.Value = mode; await cmd.ExecuteReaderAsync(); if (int.Parse(p1.Value.ToString()) == 0) { throw new Exception("failed"); } RestfulResult.RestfulData rr = new RestfulResult.RestfulData(200, "success"); return new JsonResult(rr); })); }