public IHttpActionResult CreateCard(CardDTO cardDTO) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { Card card = converter.ConvertToCard(cardDTO); card.Deck = moderation.FindDeckByName(cardDTO.DeckName); card.CardType = moderation.FindCardTypeByName(cardDTO.CardTypeName); card.Answers = new List <Answer>(); foreach (var answer in cardDTO.Answers) { card.Answers.Add(moderation.CreateAnswer(converter.ConvertToAnswer(answer))); } moderation.CreateCard(card); return(Ok(converterToDTO.ConvertToCardDTO(card))); } catch (Exception ex) { return(BadRequest(ex.Message)); } }