public ArticleAddOrUpdateResponseDto AddOrUpdate(ArticleAddOrUpdateRequestDto request)
        {
            var entity = _repository.GetAll()
                         .FirstOrDefault(x => x.Id == request.Id && x.IsDeleted == false);

            if (entity == null)
            {
                _repository.Add(entity = new Article());
            }
            entity.Title = request.Title;
            _uow.SaveChanges();
            return(new ArticleAddOrUpdateResponseDto(entity));
        }
Esempio n. 2
0
        public ArticleAddOrUpdateResponseDto AddOrUpdate(ArticleAddOrUpdateRequestDto request)
        {
            var entity = GetAll()
                         .FirstOrDefault(x => x.Id == request.Id && x.IsDeleted == false);

            if (entity == null)
            {
                _repository.Add(entity = new Models.Article());
            }
            entity.Name                = request.Name;
            entity.AuthorId            = request.AuthorId;
            entity.Excerpt             = request.Excerpt;
            entity.ArticleBody         = request.ArticleBody;
            entity.Headline            = request.Headline;
            entity.AlternativeHeadline = request.AlternativeHeadline;
            entity.Url = request.Url;

            entity.Images.Clear();

            foreach (var image in request.Image)
            {
            }

            entity.Tags.Clear();

            foreach (var tag in request.Tags)
            {
            }

            entity.Categories.Clear();

            foreach (var category in request.Categories)
            {
            }

            entity.DateModified  = Now;
            entity.DatePublished = request.DatePublished;
            entity.Author        = request.Author != null?_uow.Authors.GetById(request.Author.Id) : null;

            _uow.SaveChanges();

            return(new ArticleAddOrUpdateResponseDto(entity));
        }
 public IHttpActionResult Update(ArticleAddOrUpdateRequestDto dto)
 {
     return(Ok(_articleService.AddOrUpdate(dto)));
 }