到目前为止,我有一个.net 4.7库,我在这个模式下使用IQuery:
IQueryable<MyType> myIQueryable = mySource;
if(paramIsNew != null)
{
myIQueryable = myIQueryable.where(x => x.IsNew == paramIsNew);
}
依此类推更多参数和条件。
但是,现在我正在尝试将此库转换为.net标准库,但是我收到的错误是我无法将IEnumerable转换为IQueryable,它存在且显式转换。
我没有看到问题,如何解决问题。
答案 0 :(得分:3)
因为Queryable
类以及特定于查询的扩展方法(如Where
)不属于默认的.NET标准库。因此,您使用Enumerable.Where
扩展方法,该方法返回IEnumerable
。您的myIQueryable
类型为IQueryable
,因此您收到编译错误。你需要安装System.Linq.Queryable
nuget包,然后安装你的代码。