public List <EstudioViewModel> ListarComJogos()
        {
            using (InLockContext ctx = new InLockContext())
            {
                var listaEstudios = ctx.Estudios.Include(x => x.Pais).ToList();
                List <EstudioViewModel> ViewsModel = new List <EstudioViewModel>();

                foreach (var E in listaEstudios)
                {
                    var a = new EstudioViewModel();

                    a.nomeEstudio  = E.NomeEstudio;
                    a.dataCriacao  = E.DataCriacao;
                    a.estudioId    = E.EstudioId;
                    a.nomePais     = ctx.Paises.Find(E.PaisId).NomePais;
                    a.emailUsuario = ctx.Usuarios.Find(E.UsuarioId).Email;
                    a.jogos        = new List <JogoViewModel>();
                    foreach (var item in ctx.Jogos.Where(x => x.EstudioId == E.EstudioId).ToList())
                    {
                        JogoViewModel jv = new JogoViewModel();
                        jv.jogoId         = item.JogoId;
                        jv.nomeJogo       = item.NomeJogo;
                        jv.descricao      = item.Descricao;
                        jv.dataLancamento = item.DataLancamento;
                        jv.valor          = item.Valor;
                        jv.nomeEstudio    = ctx.Estudios.Find(item.EstudioId).NomeEstudio;
                        a.jogos.Add(jv);
                    }


                    ViewsModel.Add(a);
                }
                return(ViewsModel);
            }
        }
        public List <EstudioViewModel> ListarJogosPorPais(int id)
        {
            using (InLockContext ctx = new InLockContext())
            {
                var listaEstudios = ctx.Estudios.Include(x => x.Pais).ToList();
                var listaJogos    = ctx.Jogos.Include(x => x.Estudio).ToList();
                List <EstudioViewModel> ViewsModel = new List <EstudioViewModel>();

                foreach (var E in listaEstudios)
                {
                    List <JogoViewModel> Jogos = new List <JogoViewModel>();
                    var a = new EstudioViewModel();

                    a.nomeEstudio = E.NomeEstudio;
                    a.dataCriacao = E.DataCriacao;
                    a.estudioId   = E.EstudioId;
                    a.nomePais    = ctx.Paises.Find(E.PaisId).NomePais;
                    foreach (var J in listaJogos)
                    {
                        if (J.EstudioId == E.EstudioId)
                        {
                            var j = new JogoViewModel
                            {
                                jogoId         = J.JogoId,
                                nomeJogo       = J.NomeJogo,
                                dataLancamento = J.DataLancamento,
                                valor          = J.Valor
                            };
                            Jogos.Add(j);
                        }
                    }
                    a.jogos = Jogos;

                    if (E.PaisId == id)
                    {
                        ViewsModel.Add(a);
                    }
                }
                return(ViewsModel);
            }
        }
        public List <EstudioViewModel> BuscarPeloIdUsuario(int idUser)
        {
            using (InLockContext ctx = new InLockContext())
            {
                var listaEstudios = ctx.Estudios.Include(x => x.Pais).Where(x => x.UsuarioId == idUser).ToList();
                List <EstudioViewModel> ViewsModel = new List <EstudioViewModel>();

                foreach (var E in listaEstudios)
                {
                    var a = new EstudioViewModel();

                    a.nomeEstudio  = E.NomeEstudio;
                    a.dataCriacao  = E.DataCriacao;
                    a.estudioId    = E.EstudioId;
                    a.nomePais     = ctx.Paises.Find(E.PaisId).NomePais;
                    a.emailUsuario = ctx.Usuarios.Find(E.UsuarioId).Email;

                    ViewsModel.Add(a);
                }
                return(ViewsModel);
            }
        }
        public List <EstudioViewModel> ListarPorPais(int id)
        {
            using (InLockContext ctx = new InLockContext())
            {
                var listaEstudios = ctx.Estudios.Include(x => x.Pais).ToList();
                List <EstudioViewModel> ViewsModel = new List <EstudioViewModel>();

                foreach (var E in listaEstudios)
                {
                    var a = new EstudioViewModel();

                    a.nomeEstudio = E.NomeEstudio;
                    a.dataCriacao = E.DataCriacao;
                    a.estudioId   = E.EstudioId;
                    a.nomePais    = ctx.Paises.Find(E.PaisId).NomePais;
                    if (E.PaisId == id)
                    {
                        ViewsModel.Add(a);
                    }
                }
                return(ViewsModel);
            }
        }