首页 > 学院 > 开发设计 > 正文

MongoDB官方C#驱动的AsQueryable踩到坑了

2019-11-17 02:48:38
字体:
来源:转载
供稿:网友

MongoDB官方C#驱动的AsQueryable踩到坑了

collection.AsQueryable().Where()有4个重载,分别是:

publicstaticIQueryable<TSource>Where<TSource>(thisIQueryable<TSource>source,ExPRession<Func<TSource,bool>>predicate);publicstaticIQueryable<TSource>Where<TSource>(thisIQueryable<TSource>source,Expression<Func<TSource,int,bool>>predicate);publicstaticIEnumerable<TSource>Where<TSource>(thisIEnumerable<TSource>source,Func<TSource,bool>predicate);publicstaticIEnumerable<TSource>Where<TSource>(thisIEnumerable<TSource>source,Func<TSource,int,bool>predicate);
由于分页需要同时查询数量和列表,就把条件提出来,结果类型错误的将条件类型选成了IEnumerable<TSource>提供的Func<TSource,bool>,而不是IQueryable<TSource>提供的Expression<Func<TSource,bool>>,结果导致条件在C#中筛选、排序。

唉,以后用扩展方法还要看清提供者。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表