public IActionResult Create(DetailedContentDto model) { var content = new ContentObject { Content = model.Content, CreatedById = User.GetUserId(), CustomFields = model.CustomFields .Select(field => new CustomField { FieldKey = field.FieldKey, FieldValue = field.FieldValue }) .ToList(), Excerpt = model.Excerpt, PublishedAt = model.Status == ContentStatus.Published ? (DateTimeOffset?)DateTimeOffset.UtcNow : null, Status = model.Status, Title = model.Title, TypeId = model.Type.Id }; content.TaxonomyTerms = model.TaxonomyTerms .Select(term => new ContentTaxonomyTerm { Content = content, Term = data.TaxonomyTerms.Find(term.Id) }).ToList(); data.Contents.Add(content); data.SaveChanges(); content = data.DetailedContents.Single(x => x.Id == content.Id); return(Ok(mapper.Map <DetailedContentDto>(content))); }
public async Task <IActionResult> Update(DetailedContentDto model) { var entity = data.DetailedContents.SingleOrDefault(x => x.Id == model.Id); if (entity == null) { return(NotFound()); } entity.Content = model.Content; entity.Excerpt = model.Excerpt; entity.Status = model.Status; entity.Title = model.Title; if (!entity.PublishedAt.HasValue && model.Status == ContentStatus.Published) { entity.PublishedAt = DateTimeOffset.Now; } UpdateCustomFields(entity.CustomFields, model.CustomFields, entity); UpdateTaxonomyTerms(entity.TaxonomyTerms, model.TaxonomyTerms, entity); await data.SaveChangesAsync(); return(Ok(mapper.Map <DetailedContentDto>(data.DetailedContents.Single(x => x.Id == entity.Id)))); }
public MappingProfile() { DetailedContentDto.Map(this); UserGroup.Map(this); UserDto.Map(this); }