Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有人能帮我把SQL查询转换成LINQ表达式吗?_Linq_Linq To Sql - Fatal编程技术网

有人能帮我把SQL查询转换成LINQ表达式吗?

有人能帮我把SQL查询转换成LINQ表达式吗?,linq,linq-to-sql,Linq,Linq To Sql,有人能帮我把下面的SQL查询转换成LINQ表达式吗 select student.StudentID, student.FirstName + ' ' + student.MiddleInitial + ' ' + student.LastName, student.OpenDate, acct.Balance from Student student inner join (Select StudentID, Sum(Amount

有人能帮我把下面的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)       
             }
             ); 
谢谢大家!

试试这个

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)
    };

您不应该将表示逻辑混合到SQL查询中。查询应该以三个字段的形式返回名称的部分,并且应该在接收应用程序上显示如何呈现它们。您是正确的,谢谢。我将修改查询以仅返回部分名称,并在预网格层中处理格式。请参阅: