【发布时间】:2014-11-25 19:07:07
【问题描述】:
基于这个问题:Why isn't it possible to combine LINQ to XML with LINQ to SQL? 我想知道编译器如何确定使用哪个 LINQ 提供程序。
问题中使用的是 Linq2Xml 和 Linq2Sql,编译器使用的是 Linq2Sql。我想知道为什么这是因为使用了两个提供程序:xml 和 sql。
有人能解释一下编译器如何知道使用哪一个吗?
【问题讨论】:
-
你的意思是哪个provider?
-
是的,也许这是一个更好的描述
-
我认为它与编译器无关,它是运行时的事情。查询将使用您正在查询的集合的 linq 提供程序执行。在您的示例中,
unitOfWork.TaxForms看起来像DbSet,因此Single()中的表达式变成了 Sql。