Beispiel #1
0
    public async Task <IActionResult> CreateBlogPost(BlogPostModel model)
    {
        if (model == null)
        {
            throw new ArgumentNullException(nameof(model));
        }

        ViewBag.NavigationZone = NavigationZone.Administration;

        if (ModelState.IsValid)
        {
            if (model.Behavior == BlogPostAction.Preview)
            {
                model.Preview = true;
            }
            if (model.Behavior == BlogPostAction.Save)
            {
                model.WasAttempted = true;

                var post = new Post()
                {
                    BlogId      = 1,
                    Title       = model.Title,
                    Description = model.Description,
                    PublishDate = model.PublishDate
                };

                await _blogSvc.AddPostAsync(post);

                model.Success = true;
            }
        }
        else
        {
            model.WasAttempted = true;
            LogValidationErrors();
        }

        return(View(model));
    }