예제 #1
0
        public async Task <IActionResult> Edit(StrategyEditBindingModel model)
        {
            var strategy = await this.strategiesService.EditStrategyAsync(model);

            SetSuccesfullMessage(EditedSuccessfully, StrategyConst);

            return(this.RedirectToAction("Details", new { id = strategy.Id, slug = strategy.Slug }));
        }
        public async Task <Strategy> EditStrategyAsync(StrategyEditBindingModel model)
        {
            Validator.EnsureNotNull(model, ValidationConstants.StrategyDefinedMessage);
            Validator.EnsureStringNotNullOrEmpty(model.Title, ValidationConstants.StrategyTitleMessage);
            Validator.EnsureStringNotNullOrEmpty(model.Slug, ValidationConstants.StrategySlugMessage);
            Validator.EnsureStringNotNullOrEmpty(model.Content, ValidationConstants.StrategyContentMessage);
            Validator.EnsureStringNotNullOrEmpty(model.Priority.ToString(), ValidationConstants.StrategyPriorityMessage);

            var dbStrategy = this.DbContext.Strategies.Find(model.Id);

            dbStrategy.Priority = model.Priority;
            dbStrategy.Content  = model.Content;
            dbStrategy.Title    = model.Title;
            dbStrategy.Slug     = model.Slug;

            await this.DbContext.SaveChangesAsync();

            return(dbStrategy);
        }