public override System.Web.Mvc.ActionResult Edit(ViewModels.Users.EditViewModel user)
        {
            var callInfo = new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.Edit);

            ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "user", user);
            EditOverride(callInfo, user);
            return(callInfo);
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Edit([FromForm] ViewModels.Users.EditViewModel model)
        {
            try
            {
                model.Errors.Items.Clear();

                if (model == null)
                {
                    model.Errors.Items.Add("Пустой параметр");
                    return(PartialView(model));
                }
                if (string.IsNullOrEmpty(model.Username))
                {
                    model.Errors.Items.Add("Не указано имя пользователя.");
                    return(PartialView(model));
                }

                var entity = await context.Users.FindAsync(model.Id);

                entity.Id          = model.Id;
                entity.Email       = model.EMail;
                entity.UserName    = model.Username;
                entity.PhoneNumber = model.Phone;

                context.Update(entity);
                await context.SaveChangesAsync();


                //var result = await userManager.UpdateAsync(new Models.User
                //{
                //	Id = model.Id,
                //	Email = model.EMail,
                //	UserName = model.Username,
                //	PhoneNumber = model.Phone
                //});

                //if (!result.Succeeded)
                //{
                //	foreach (var er in result.Errors)
                //	{
                //		if (er.Code == "DuplicateUserName")
                //			model.Errors.Items.Add($"Пользователь \'{model.Username}\' уже существует");
                //	}
                //	return PartialView(model);
                //}
            }
            catch (Exception ex)
            {
                model.Errors.Items.Add(ex.Message);
                return(PartialView(model));
            }

            return(RedirectToAction("List"));
        }
 partial void EditOverride(T4MVC_System_Web_Mvc_ActionResult callInfo, ViewModels.Users.EditViewModel user);