【问题标题】:I have a problem while migrating SQL query to Entity Framework将 SQL 查询迁移到实体框架时遇到问题
【发布时间】:2019-07-01 12:32:41
【问题描述】:

我有这个 SQL 查询,但我无法将它转移到 linq 查询实体框架。

SELECT 
    RB.CustomerId AS ID, C.FullName AS 'FULL NAME', 
    C.PhoneNumber AS 'PHONE NUMBER', 
    COUNT(RB.CustomerId) AS BOOKS 
FROM  
    RentedBooks RB
JOIN 
    Customers C ON RB.CustomerId = C.Id
GROUP BY  
    C.FullName, C.PhoneNumber, RB.CustomerId;

【问题讨论】:

标签: sql entity-framework


【解决方案1】:

以下代码相当于您在 linq 中的查询:

var query = db.RentedBooks.GroupBy(x => new { x.Customer.FullName, x.CustomerId ,x.Customer.PhoneNumber })
.Select(x => new { ID = x.Key.CustomerId,
        x.Key.FullName,
        ,x.Key.PhoneNumber,Books = x.Count() });

【讨论】:

  • 这是做什么的?它如何回答这个问题?不要只是脱口而出代码。解释你自己! stackoverflow.com/help/how-to-answer
  • @RobThis 太明显了! EF 中的等效查询。
  • 我只想扩展Books = x.Count() 的书数。显示数据时可以美化字段名称(即“全名”)。
  • @StevePy 是的,你是对的,我已经编辑了答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-09-12
  • 1970-01-01
  • 2017-04-11
  • 1970-01-01
  • 1970-01-01
  • 2022-10-07
  • 1970-01-01
相关资源
最近更新 更多