public List <MediaAluno> ObterMedia()
        {
            FaculdadeDBContext context = new FaculdadeDBContext();
            List <MediaAluno>  result  = new List <MediaAluno>();

            var teste = (from a in context.Aluno
                         join b in context.ProvaAluno on a.idAluno equals b.idAluno
                         select new { a.idAluno, a.matricula, a.nome, a.idTurma, b.notaAluno } into x
                         join c in context.Prova on x.idTurma equals c.idProva
                         select new { x.idAluno, x.matricula, x.nome, x.idTurma, x.notaAluno, c.peso } into w
                         join d in context.Turma on w.idTurma equals d.idTurma
                         select new { w.idAluno, w.matricula, w.nome, w.idTurma, w.notaAluno, w.peso, d.nomeTurma } into z
                         group z by new { z.idAluno, z.matricula, z.nome, z.nomeTurma } into g
                         select new MediaAluno
            {
                nomeTurma = g.Key.nomeTurma,
                matricula = g.Key.matricula,
                nomeAluno = g.Key.nome,
                mediaAluno = g.Sum(i => i.notaAluno * i.peso) / g.Sum(j => j.peso)
            }).
                        OrderByDescending(f => f.mediaAluno)
                        .ToList();



            return(teste);
        }
예제 #2
0
 public int Save(Aluno aluno)
 {
     using (var db = new FaculdadeDBContext())
     {
         db.Entry(aluno).State = System.Data.Entity.EntityState.Added;
         db.Aluno.Add(aluno);
         db.SaveChanges();
     }
     return(aluno.idAluno);
 }
예제 #3
0
 public int Update(Aluno aluno, Int32 idAluno)
 {
     using (var db = new FaculdadeDBContext())
     {
         Aluno aluno_a_alterar = db.Aluno.First(t => t.idAluno == idAluno);
         if (aluno_a_alterar != null)
         {
             aluno_a_alterar = aluno;
         }
         db.SaveChanges();
     }
     return(aluno.idAluno);
 }