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
.net 2个linq语句可以转换成1个吗?_.net_Linq - Fatal编程技术网

.net 2个linq语句可以转换成1个吗?

.net 2个linq语句可以转换成1个吗?,.net,linq,.net,Linq,我有两个linq语句,如下所示 // Extracts a list of int from List<BookmarkedDeal> IEnumerable<int> IDs = user.BookmarkedDeals.Select(d => d.DealId); // Calls method to return List<Deal> using IDs from previous statement IEnumerable&l

我有两个linq语句,如下所示

// Extracts a list of int from List<BookmarkedDeal>         
IEnumerable<int> IDs = user.BookmarkedDeals.Select(d => d.DealId);

// Calls method to return List<Deal> using IDs from previous statement
IEnumerable<Deal> deals = DealBL.FindActiveById(IDs).OrderBy(d => d.Store.Name);
//从列表中提取int的列表
IEnumerable id=user.BookmarkedDeals.Select(d=>d.DealId);
//调用方法以使用上一语句中的ID返回列表
IEnumerable deals=DealBL.FindActiveById(id).OrderBy(d=>d.Store.Name);

我想这是可能的,但我现在还没想清楚。这有什么问题吗

var deals = DealBL.FindActiveById(user.BookmarkedDeals.Select(d => d.DealId))
                  .OrderBy(d => d.Store.Name); 

以防您想知道如何使用查询语法执行相同的操作:

var deals = from d in DealBL.FindActiveById(
                from d in user.BookmarkedDeals
                select d.DealId
            )
            orderby d.Store.Name
            select d;

我认为你的密码是假的
int-id
应该是
IEnumerable-id
Deal-deals
应该是
IEnumerable-deals
。否则它将无法编译。@DanielHilgarth-Daniel,你是对的。我将它们从var改为帮助澄清,但做了相反的事情。没问题,Daniel,刚开始使用linq的所有方法都是压倒性的。我要试一试。