public ActionResult EditUser(UserModel model) { if (ModelState.IsValid) { using (var tran = DataContext.Session.BeginTransaction()) { var entity = DataContext.GetQuery <User>().SingleOrDefault(x => x.Id == model.Id); entity.DisplayName = model.DisplayName; //entity.Email = model.Email; entity.Avatar = model.Avatar; if (!string.IsNullOrEmpty(model.AvatarState)) { var tmpArray = model.AvatarState.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries) .Select(x => Convert.ToInt32(x)) .ToArray(); if (tmpArray.Length == 4) { entity.Avatar = CropAvatar(model.Avatar, tmpArray[0], tmpArray[1], tmpArray[2], tmpArray[3]); } } entity.Company = model.Company; DataContext.Update(entity); tran.Commit(); } return(RedirectToAction("Index")); } return(View("Error")); }