小编典典

如何使用方法语法在 linq to sql 中进行连接?

all

我在 LINQ to SQL 示例中看到了很多关于如何在查询语法中进行连接的示例,但我想知道如何使用方法语法来做到这一点?例如,我该如何执行以下操作

var result = from sc in enumerableOfSomeClass
             join soc in enumerableOfSomeOtherClass
             on sc.Property1 equals soc.Property2
             select new { SomeClass = sc, SomeOtherClass = soc }

有一个.Join()?谁能说明或提供另一个简单的例子?


阅读 76

收藏
2022-06-28

共1个答案

小编典典

var result = from sc in enumerableOfSomeClass
             join soc in enumerableOfSomeOtherClass
             on sc.Property1 equals soc.Property2
             select new { SomeClass = sc, SomeOtherClass = soc };

相当于:

var result = enumerableOfSomeClass
    .Join(enumerableOfSomeOtherClass,
          sc => sc.Property1,
          soc => soc.Property2,
          (sc, soc) => new
                       {
                           SomeClass = sc,
                           SomeOtherClass = soc
                       });

如您所见,当涉及到连接时,查询语法通常比 lambda 语法更具可读性。

2022-06-28