Может кто-нибудь помочь мне преобразовать SQL-запрос в выражение LINQ? - PullRequest
0 голосов
/ 11 июня 2011

Может ли кто-нибудь помочь мне преобразовать следующий SQL-запрос в выражение LINQ?

select student.StudentID,
       student.FirstName + ' ' + student.MiddleInitial + ' ' + student.LastName, 
       student.OpenDate,     
       acct.Balance    
from Student student
inner join 
(Select StudentID, Sum(Amount) as Balance 
from Account 
Group by StudentID) as acct on student.StudentID = acct.StudentID

Следующее выражение LINQ работает! Большое спасибо, Фил !!!

var results = (from s in Students     
          join a in Accounts on s.StudentID equals a.StudentID     
          group a by new                  
             {s.StudentID, s.FirstName, s.MiddleInitial, s.LastName, s.OpenDate}             
             into z     
             select  new     
             {   StudentID = z.Key.StudentID,         
                 FirstName = z.Key.FirstName, 
                 MiddleInitial = z.Key.MiddleInitial, 
                 LastName = z.Key.LastName,         
                 OpenDate = z.Key.OpenDate,         
                 Balance = z.Sum(a=> a.Amount)       
             }
             ); 

Спасибо!

1 Ответ

2 голосов
/ 11 июня 2011

Попробуйте?

var stu = 
    from s in db.Students
    join a in db.Account on s.StudentID equals a.StudentID
    group a by new 
                {s.StudentID, s.FirstName, s.MiddleInitial, s.LastName, s.OpenDate} 
            into z
    select new 
    {   StudentID = z.Key.StudentID,
        FullName = string.Format("{0} {1} {2}",z.Key.FirstName, z.Key.MiddleInitial, z.Key.LastName),
        OpenDate = z.Key.OpenDate,
        Balance = z.Sum(a=>a.Amount)
    };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...