/// <summary>
        /// Lista os jogos
        /// </summary>
        /// <returns> Retorna uma lista de jogos </returns>
        public List <jogoDomain> ListarJogo()
        {
            List <jogoDomain> TodosJogos = new List <jogoDomain>();

            using (SqlConnection con = new SqlConnection(ConexaoString))
            {
                string QuerySelecionarJogos = "select  idJogo, nomeJogo, descricaoJogo, dataLancamento, valor, idEstudio from jogos";

                SqlDataReader rdr;

                using (SqlCommand cmd = new SqlCommand(QuerySelecionarJogos, con))
                {
                    con.Open();

                    rdr = cmd.ExecuteReader();

                    while (rdr.Read())
                    {
                        jogoDomain jogoAdicionar = new jogoDomain()
                        {
                            idJogo         = Convert.ToInt32(rdr["idJogo"]),
                            nomeJogo       = rdr["nomeJogo"].ToString(),
                            descricaoJogo  = rdr["descricaoJogo"].ToString(),
                            dataLancamento = Convert.ToDateTime(rdr["dataLancamento"]),
                            valor          = Convert.ToDouble(rdr["valor"]),
                            idEstudio      = Convert.ToInt32(rdr["idEstudio"]),
                        };

                        TodosJogos.Add(jogoAdicionar);
                    }

                    return(TodosJogos);
                }
            }
        }
        /// <summary>
        /// Método de listar todos os Jogos
        /// </summary>
        /// <returns>Uma Lista de jogos</returns>
        public List <jogoDomain> ListarTodos()
        {
            List <jogoDomain> listaJogos = new List <jogoDomain>();

            using (SqlConnection con = new SqlConnection(stringConexao))
            {
                string querrySelectAll = "SELECT IdJogo ,NomeJogo , NomeEstudio, Descricao, valor, Lancamento FROM Jogo JOIN Estudio ON Jogo.IdEstudio = Estudio.IdEstudio";

                con.Open();

                SqlDataReader rdr;

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

                    while (rdr.Read())
                    {
                        jogoDomain jogo = new jogoDomain()
                        {
                            idJogo     = Convert.ToInt32(rdr[0]),
                            nome       = rdr[1].ToString(),
                            estudio    = rdr[2].ToString(),
                            descrição  = rdr[3].ToString(),
                            valor      = Convert.ToInt32(rdr[4]),
                            lancamento = Convert.ToDateTime(rdr[5]),
                        };
                        listaJogos.Add(jogo);
                    }
                }
            }
            return(listaJogos);
        }
        /// <summary>
        /// Cadastra novos jogos
        /// </summary>
        /// <param name="novoJogo">propriedades passada no corpo do requisição</param>
        public void CadastrarJogo(jogoDomain novoJogo)
        {
            using (SqlConnection con = new SqlConnection(ConexaoString))
            {
                string QueryCadastrarJogo = "INSERT INTO jogos(nomeJogo, descricaoJogo, dataLancamento, valor, idEstudio) values (@nomeJogo, @descricaoJogo, @dataLancamento, @valor, @idEstudio)";

                using (SqlCommand cmd = new SqlCommand(QueryCadastrarJogo, con))
                {
                    cmd.Parameters.AddWithValue("@nomeJogo", novoJogo.nomeJogo);
                    cmd.Parameters.AddWithValue("@descricaoJogo", novoJogo.descricaoJogo);
                    cmd.Parameters.AddWithValue("@dataLancamento", novoJogo.dataLancamento);
                    cmd.Parameters.AddWithValue("@valor", novoJogo.valor);
                    cmd.Parameters.AddWithValue("@idEstudio", novoJogo.idEstudio);

                    con.Open();

                    cmd.ExecuteNonQuery();
                }
            }
        }
        /// <summary>
        /// Método de Cadastrar um novo jogo
        /// </summary>
        /// <param name="novoJogo"></param>
        ///
        public void Cadastrar(jogoDomain novoJogo)
        {
            using (SqlConnection con = new SqlConnection(stringConexao))
            {
                string queryInsert = "INSERT INTO Jogo(NomeJogo, idEstudio, Descricao, Lancamento, Valor) VALUES( @Nome, @IdEstudio, @Descricao, @Lancamento, @Valor);";
                using (SqlCommand cmd = new SqlCommand(queryInsert, con))
                {
                    cmd.Parameters.AddWithValue("@Nome", novoJogo.nome);
                    cmd.Parameters.AddWithValue("@IdEstudio", novoJogo.idEstudio);
                    cmd.Parameters.AddWithValue("@Descricao", novoJogo.descrição);
                    cmd.Parameters.AddWithValue("@Lancamento", novoJogo.lancamento);
                    cmd.Parameters.AddWithValue("@Valor", novoJogo.valor);

                    //Abre a conexão com o banco de dados
                    con.Open();

                    //Executa a querry
                    cmd.ExecuteNonQuery();
                }
            }
        }
        public IActionResult CadastrarJogo(jogoDomain jogos)
        {
            _jogoRepository.CadastrarJogo(jogos);

            return(StatusCode(201));
        }
        public IActionResult Post(jogoDomain novoJogo)
        {
            _jogoRepository.Cadastrar(novoJogo);

            return(StatusCode(201));
        }