【问题标题】:How to Convert Inner Join SQL Query to Lambda Expression如何将内连接 SQL 查询转换为 Lambda 表达式
【发布时间】:2020-07-15 14:22:05
【问题描述】:

如何将此内连接 sql 查询转换为 lamda 表达式

SELECT
   f.ID,Floor_Name,Campus_Name,c.ID,Building_Name,b.ID
FROM
    Floors f
INNER JOIN Campus c ON c.ID = f.CampusID
INNER JOIN Buildings b ON b.ID = f.BuildingID

【问题讨论】:

  • SQL 是一种声明性语言,而 lambda 表达式是一种命令式构造。这不会是无损转换。

标签: sql asp.net sql-server asp.net-mvc entity-framework


【解决方案1】:

您的 SQL 查询可以转换为以下 EF 查询

var result = from floor in floors
join c in campus on c.Id equals floor.CampusId
join b in Buildings on b.Id equals floor.BuildingId
select new {
floor.Id, floor.Floor_Name, c.Campus_Name, c.Id, b.Building_Name, b.Id
};

如果您没有任何过滤器可应用于 EF 查询,则可以使用 ToList()

如果您想引用其他过滤器,请在此处查看:Join/Where with LINQ and Lambda

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多