コード例 #1
0
        public async Task <ActionResult> Edit([Bind(Include = "memno,mememail,Newpwd,NewpwdConfirm,memdiminutive,memname,memsex,memtel,memaddress,memaccountstate,memchecknumber,membirth")] MemEditModel model, HttpPostedFileBase files)
        {
            ModelState.Remove("mempwd");
            ModelState.Remove("memcreatedate");
            if (ModelState.IsValid)
            {
                MemService service = new MemService();
                var        user    = await UserManager.FindByNameAsync(model.mememail);

                user.Email       = model.mememail;
                user.PhoneNumber = model.memtel;
                user.NickName    = model.memdiminutive;
                if (!string.IsNullOrWhiteSpace(model.Newpwd))
                {
                    user.PasswordHash = UserManager.PasswordHasher.HashPassword(model.Newpwd);
                    model.mempwd      = user.PasswordHash;
                }
                using (var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
                {
                    try
                    {
                        if (files != null)
                        {
                            if (files.ContentLength > 0)
                            {
                                model.mempic = fService.SaveImgFile(model.memno, files);
                            }
                        }

                        var result = await UserManager.UpdateAsync(user);

                        if (result.Succeeded)
                        {
                            MEMBER uMember = Service.SetEditModel(model);
                            Service.Update(uMember);

                            scope.Complete();
                            return(RedirectToAction("Index", "Member", new { area = "Admin" }));
                        }
                    }
                    catch (DbEntityValidationException ex)
                    {
                        logger.Error(GetEntityErrorMsg(ex));
                    }
                    catch (Exception ex)
                    {
                        logger.Error(ex.Message);
                        scope.Dispose();
                    }
                }
            }
            return(View(model));
        }
コード例 #2
0
        public MEMBER SetEditModel(MemEditModel model)
        {
            MEMBER target = FindOne(model.memno);
            var    config = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <MemEditModel, MEMBER>()
                .ForMember(x => x.FAVORITESHOPLIST, y => y.Ignore())
                .ForMember(x => x.MEMBERLIST, y => y.Ignore())
                .ForMember(x => x.memcreatedate, opt => opt.MapFrom(o => target.memcreatedate))
                .ForMember(x => x.memupdatedate, opt => opt.MapFrom(o => DateTime.Now))
                .ForMember(x => x.mempic, opt => opt.MapFrom(o => (string.IsNullOrEmpty(model.mempic) ? target.mempic : model.mempic)))
                .ForMember(x => x.mempwd, opt => opt.MapFrom(o => (string.IsNullOrEmpty(model.mempwd) ? target.mempwd : model.mempwd)))
                .ForMember(x => x.memguid, opt => opt.MapFrom(o => target.memguid))
                ;
            });
            IMapper mapper = config.CreateMapper();

            return(mapper.Map <MemEditModel, MEMBER>(model));
        }
コード例 #3
0
        // GET: Admin/Memmber/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            //string baseUrl = new Uri(Request.Url, Url.Content("~")).AbsoluteUri;
            //baseUrl = baseUrl.Remove(baseUrl.Length - 1);
            //ViewBag.baseUrl = baseUrl;

            MEMBER mEMBER = Service.FindOne(id ?? 0);

            if (mEMBER == null)
            {
                return(HttpNotFound());
            }

            MemEditModel viewModel = Service.GetEditModel(mEMBER);

            return(View(viewModel));
        }
コード例 #4
0
 public MEMBER SetEditModel(MemEditModel model)
 {
     return(dao.SetEditModel(model));
 }