public int Gravar(PerguntaViewModel pergunta) { int retorno = 0; Pergunta p = new Pergunta() { Id = pergunta.Id, Titulo = pergunta.Titulo, Descricao = pergunta.Descricao, Dica = pergunta.Dica, Ordem = pergunta.Ordem, Obrigatoria = pergunta.Obrigatoria, TipoId = pergunta.TipoId, QuestionarioId = pergunta.QuestionarioId }; List <PerguntaTag> tags = null; if (pergunta.Tags != null && pergunta.Tags.Count > 0) { tags = new List <PerguntaTag>(); foreach (TagViewModel t in pergunta.Tags) { PerguntaTag pt = new PerguntaTag(); pt.IdPerguntaNavigation = p; pt.IdTagNavigation = new Tag() { Id = t.Id, Nome = t.Nome }; tags.Add(pt); } } p.PerguntaTag = tags; return(p.Gravar()); }