public ActionResult CriarLivro(vw_LIVRO oLivro, HttpPostedFileBase upload) { if (ModelState.IsValid) { List <EDITORA> Editoras = _repositoryE.ListarEditoras(); List <AUTOR> Autores = _repositoryA.ListarAutores(); List <GENERO> Generos = _repositoryG.ListarGeneros(); LIVRO LivroGravar = new LIVRO(); GENERO GeneroAtual = new GENERO(); EDITORA EditoraAtual = new EDITORA(); AUTOR AutorAtual = new AUTOR(); #region UploadArquivo int ups = Request.Files.Count; if (ups > 0) { upload = Request.Files[0]; if (upload.ContentLength > 0) { string path = Server.MapPath("~/Uploads/"); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } LivroGravar.ImagemCaminho = "~/Uploads/" + upload.FileName; upload.SaveAs(path + Path.GetFileName(upload.FileName)); } } #endregion LivroGravar.ISBN = oLivro.ISBN; LivroGravar.Sinopse = oLivro.Sinopse; LivroGravar.Titulo = oLivro.Titulo; LivroGravar.DataPublicacao = oLivro.DataPublicacao; #region GENERO GeneroAtual = Generos.Where(x => x.NomeGenero.ToLower() == oLivro.NomeGenero.ToLower()).Select(x => x).FirstOrDefault(); if (GeneroAtual != null) { LivroGravar.IDGenero = GeneroAtual.ID; } else { GENERO novogenero = new GENERO() { NomeGenero = oLivro.NomeGenero }; _repositoryG.Incluir(novogenero); GeneroAtual = novogenero; LivroGravar.IDGenero = novogenero.ID; } #endregion #region Autor AutorAtual = Autores.Where(x => x.NomeAutor.ToLower() == oLivro.NomeAutor.ToLower()).Select(x => x).FirstOrDefault(); if (AutorAtual != null) { LivroGravar.IDAutor = AutorAtual.ID; } else { AUTOR novoautor = new AUTOR() { NomeAutor = oLivro.NomeAutor }; _repositoryA.Incluir(novoautor); AutorAtual = novoautor; LivroGravar.IDAutor = novoautor.ID; } #endregion #region Editora EditoraAtual = Editoras.Where(x => x.Editora.ToLower() == oLivro.Editora.ToLower()).Select(x => x).FirstOrDefault(); if (EditoraAtual != null) { LivroGravar.IDEditora = EditoraAtual.ID; } else { EDITORA novaeditora = new EDITORA() { Editora = oLivro.Editora }; _repositoryE.Incluir(novaeditora); EditoraAtual = novaeditora; LivroGravar.IDEditora = novaeditora.ID; } #endregion _repository.Incluir(LivroGravar); return(RedirectToAction("Estante")); } return(View(oLivro)); }
public void Incluir(LIVRO oLivro) { _Repository.Incluir(oLivro); }