【发布时间】:2010-01-05 04:43:22
【问题描述】:
我只是尝试在实体框架查询中使用Contains,但结果却失败了,因为 EF 中不存在此方法。然而,代码编译是令人沮丧的。
在给定任何 LINQ 提供程序的情况下,有谁知道如何找到 LINQ 提供程序支持的方法?
【问题讨论】:
标签: .net linq custom-linq-providers
我只是尝试在实体框架查询中使用Contains,但结果却失败了,因为 EF 中不存在此方法。然而,代码编译是令人沮丧的。
在给定任何 LINQ 提供程序的情况下,有谁知道如何找到 LINQ 提供程序支持的方法?
【问题讨论】:
标签: .net linq custom-linq-providers
不幸的是,没有任何 API(据我所知)可以告诉您这一点。
如果您正在寻找 EF 中的等价物,this question 可能会对您有所帮助。
该问题中的示例也可能有助于解释为什么很难确定哪些表达式可以与哪些提供程序一起使用 - 许多逻辑实际上驻留在扩展方法中,而不是提供程序中。任何人都可以在IQueryable<T> 上编写扩展方法——提供者不可能知道尚未编写的扩展方法是否可以工作。而Contains 只是另一种扩展方法。
【讨论】: