[英]convert IEnumerable<T> to IQueryable<T> where T is unknown
[英]IEnumerable can't convert to IQueryable
到目前为止,我有一个.net 4.7库,该库在此模式下使用IQuery:
IQueryable<MyType> myIQueryable = mySource;
if(paramIsNew != null)
{
myIQueryable = myIQueryable.where(x => x.IsNew == paramIsNew);
}
等等,以获取更多参数和条件。
但是,现在我正在尝试将该库转换为.net标准库,但是却收到一个错误,即我无法将IEnumerable转换为IQueryable,它存在并且是显式转换。
我没有真正看到问题以及如何解决它。
这是因为Queryable
类以及特定于查询的扩展方法(例如Where
)不是默认.NET Standard库的一部分。 因此,您使用Enumerable.Where
扩展方法,该方法返回IEnumerable
。 您的myIQueryable
类型为IQueryable
因此您遇到编译器错误。 您需要安装System.Linq.Queryable
nuget软件包,然后使用编译代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.