public generoDomain BuscarPorId(int id)
        {
            using (SqlConnection con = new SqlConnection(stringConexao))
            {
                string sqlbusca = "SELECT idGenero, nome FROM Genero WHERE idGenero = @ID";

                using (SqlCommand cmd = new SqlCommand(sqlbusca, con))
                {
                    cmd.Parameters.AddWithValue("@ID", id);

                    SqlDataReader rdr;

                    con.Open();

                    rdr = cmd.ExecuteReader();

                    if (rdr.Read())
                    {
                        generoDomain genero = new generoDomain()
                        {
                            idGenero = Convert.ToInt32(rdr["idGenero"]),
                            nome     = rdr["nome"].ToString()
                        };

                        return(genero);
                    }
                    return(null);
                }
            }
        }
        public List <generoDomain> ListarTodos()
        {
            List <generoDomain> ListaGeneros = new List <generoDomain>();

            using (SqlConnection con = new SqlConnection(stringConexao))
            {
                con.Open();

                string Comando = "SELECT * FROM Genero";

                SqlDataReader rdr;

                using (SqlCommand cmd = new SqlCommand(Comando, con))
                {
                    rdr = cmd.ExecuteReader();

                    while (rdr.Read())
                    {
                        generoDomain genero = new generoDomain()
                        {
                            idGenero = Convert.ToInt32(rdr[0]),
                            nome     = rdr[1].ToString()
                        };
                        ListaGeneros.Add(genero);
                    }
                }
                return(ListaGeneros);
            }
        }
        public IActionResult getBusca(int id)
        {
            generoDomain genero = _generorepository.BuscarPorId(id);

            if (genero == null)
            {
                return(NotFound("nenhum genero foi encontrado"));
            }
            return(Ok(genero));
        }
        public void Cadastrar(generoDomain novoGenero)
        {
            using (SqlConnection con = new SqlConnection(stringConexao))
            {
                string queryInsert = $"INSERT INTO Genero (nome) VALUES (@genero)";

                using (SqlCommand cmd = new SqlCommand(queryInsert, con))
                {
                    cmd.Parameters.AddWithValue("@genero", novoGenero.nome);

                    con.Open();

                    cmd.ExecuteNonQuery();
                }
            }
        }
        public void AtualizarIdUrl(int id, generoDomain update)
        {
            using (SqlConnection con = new SqlConnection(stringConexao))
            {
                string queryAtualizarIdUrl = "UPDATE Genero SET nome = @nome WHERE idGenero = @ID";

                using (SqlCommand cmd = new SqlCommand(queryAtualizarIdUrl, con))
                {
                    cmd.Parameters.AddWithValue("@nome", update.nome);
                    cmd.Parameters.AddWithValue("@ID", id);

                    con.Open();

                    cmd.ExecuteNonQuery();
                }
            }
        }
        public IActionResult putUrl(int id, generoDomain generoAtt)
        {
            generoDomain generoBuscado = _generorepository.BuscarPorId(id);

            if (generoBuscado != null)
            {
                try
                {
                    _generorepository.AtualizarIdUrl(id, generoAtt);
                    return(NoContent());
                }
                catch (Exception erro)
                {
                    return(BadRequest(erro));
                }
            }
            return(NotFound(new { mensagem = "nenhum genero foi encontrado" }));
        }
        public IActionResult putCorpo(generoDomain generoAtt)
        {
            generoDomain generoBuscado = _generorepository.BuscarPorId(generoAtt.idGenero);

            if (generoBuscado != null)
            {
                try
                {
                    _generorepository.AtualizarIdCorpo(generoAtt);
                    return(NoContent());
                }
                catch (Exception erro)
                {
                    return(BadRequest(erro));
                }
            }
            return(NotFound(new { mensagem = "genero não encontrado" }));
        }
        public IActionResult post(generoDomain novoGenero)
        {
            _generorepository.Cadastrar(novoGenero);

            return(StatusCode(201));
        }