Ejemplo n.º 1
0
        public async Task <ActionResult> Create(PostCreateViewModel model)
        {
            _logger.Info("Creating Post! Params: " + model.ToJson());

            if (!ModelState.IsValid)
            {
                _logger.Error("Creating Post Form Invalid! Errors: " + ModelState.ToJson());
                return(Json(ModelState.ToDictionary()));
            }
            if (!await _themesManager.Exists(model.ThemeId))
            {
                ModelState.AddModelError("ThemeId", "Темата не съществува!");
                _logger.Error("Creating Post Form Invalid! Errors: " + ModelState.ToJson());

                return(Json(ModelState.ToDictionary()));
            }

            try
            {
                var post = await _postsManager.Create(model, User.Identity.GetUserId());

                _logger.Info("Post created successfully!");

                return(Json(post));
            }
            catch (Exception ex)
            {
                _logger.Error(ex, "Post Creationg Failed!");
                throw;
            }
        }
Ejemplo n.º 2
0
        public ActionResult <Post> Create(Post post)
        {
            _postService.Create(post);

            return(CreatedAtRoute("GetPost", new { id = post.Id.ToString() }, post));
        }