gpt4 book ai didi

sql - Entity Framework Lambda 表达式中的交叉连接

转载 作者:行者123 更新时间:2023-12-02 06:54:06 25 4
gpt4 key购买 nike

我如何在 EF 中执行以下加入?
表之间没有关系,没有外键。

Select t1.ID,  t1.firstname, t2.ID,t2.name from MY_TEST_TABLE1 t1, MY_TEST_TABLE2 t2
where t1.firstname = t2.name

最佳答案

你可以这样做:

var query= from t1 in context.MY_TEST_TABLE1
from t2 in context.MY_TEST_TABLE2
where t1.firstname == t2.name
select new { Table1Id= t1.ID, FirstName= t1.firstname, Table2Id=t2.ID,Name= t2.name};

在 Linq to Entities 中进行交叉连接的另一种方法是使用 SelectMany扩展方法:
var query= context.MY_TEST_TABLE1.SelectMany(
t1=>context.MY_TEST_TABLE2
.Where(t2=>t1.firstname == t2.name)
.Select(t2=>new {
Table1Id= t1.ID,
FirstName= t1.firstname,
Table2Id=t2.ID,
Name= t2.name
})
);

关于sql - Entity Framework Lambda 表达式中的交叉连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35375150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com