我已经在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()吗?谁能说明或提供另一个简单的例子?

最佳答案

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语法更具可读性。

关于linq-to-sql - 如何使用方法语法在linq中连接到sql?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3217669/

10-10 03:33