IEnumerable上的动态LINQ? [英] Dynamic LINQ on IEnumerable?
问题描述
说我需要使用动态查询(List<string> l; var x = l.Where(*dynamic query*)
)过滤通用列表
Say i need to filter a generic list with a dynamic query (List<string> l; var x = l.Where(*dynamic query*)
)
我将如何使用LINQ做到这一点? (当前在数据视图上使用行过滤器)
How would i do this using LINQ? (Currently using a row filter on a dataview)
I've seen a posting by scott g: but it appears to not work with objects that use IEnumerable
(generic lists included)
任何人都可以提供任何想法吗?
Can anyone offer any ideas?
推荐答案
假设您的意思是基于字符串的查询:动态LINQ库可以正常工作;只需先拨打.AsQueryable()
:
Assuming you mean a string-based query: the dynamic LINQ library will work fine; just call .AsQueryable()
first:
string s = *dynamic query*
var qry = l.AsQueryable().Where(s);
这为您提供了列表周围的IQueryable<T>
包装器,可用于访问动态LINQ扩展方法.
This gives you an IQueryable<T>
wrapper around your list, which provides access to the dynamic LINQ extension methods.
这篇关于IEnumerable上的动态LINQ?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!