gpt4 book ai didi

c# - 在 linq 中使用 let 关键字组合查询

转载 作者:行者123 更新时间:2023-11-30 12:11:55 24 4
gpt4 key购买 nike

我正在编写一个查询,该查询返回需要来自两个表的数据的模型列表,我希望 let关键字可以帮助我。我是这样开始的:

var TheListOfModels = 
let Data1 = (from a in MyDC.Table1
where ....
select new ObjectThatContainsData1()
{

}).ToList()

let Data2 = (from b in MyDC.Table2
where ....
select new ObjectThatContainsData2()
{

}).Tolist()

select new ObjectThatContainsBothData()
{
SomeProp1 = from p in Data1
select everything

SomeProp2 = from a in Data2
select everything

}).ToList()

我不太确定如何继续并编写最终的 select从 2 let 的结果中选择的语句子句而不是直接来自表。我正在编写的查询结构是一个好的起点还是我应该以其他方式编写?

谢谢。

根据评论编辑:表定义

表 1 看起来有点像这样:

PeachID | UserID | HarvestDateTime | SomeOtherColumn

表 2 看起来像这样:

AppleID | UserID | HarvestDateTime | SomeOtherColumn

我希望将所有桃子和苹果提取到 ObjectThatContainsBothData 的列表中并且 where 子句基本上用于过滤 HarvestDateTimeUserID

最佳答案

看起来您正在尝试将 Linq 查询语法应用于有序 C# 代码。只需创建您的对象并执行两个查询以从两个属性获取数据:

var result = new ObjectThatContainsBothData() 
{
SomeProp1 = db.Peaches.Where(...).Select(...).ToList(),
SomeProp2 = db.Apples.Where(...).Select(...).ToList()
};

关于c# - 在 linq 中使用 let 关键字组合查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14416613/

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