字符串数组上的动态linQ

时间:2014-01-29 13:51:44

标签: arrays dynamic-linq

我有一个像这样的字符串数组。

string[] ColumnArray = new string[] { First story, second data , third way };

以下是此数组的linQ查询。

string query = (from x in ColumnArray 
                           where x.Contains("Story")
                            select x).First();

但有时查询会是这样的。

string query = (from x in ColumnArray 
                         where ( x.Contains("Story") || x.Contains("View"))
                         select x).First();

该条件应该动态添加。那么动态LinQ如何在这里起作用。

我写过类似的东西。

string dynamiccondition= // some condition.

 var query = (from x in ColumnArray.AsEnumerable().AsQueryable().Where(dynamiccondition).Select(x));

//但这不起作用。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

DynamicLINQ中,您可以使用AND(&&)OR(||)等逻辑操作,请尝试使用此类内容

string dynamiccondition="it.Contains(\"Story\") OR it.Contains(\"View\")"

var query = ColumnArray.AsQueryable()
                       .Where(dynamiccondition);