[英]How to write String.Contains in Dynamic Linq
我正在嘗試編寫動態linq查詢,如:
var q = obj.Where("message.Contains('hello')");
我知道它適用於
var q = obj.Where(o => o.message.Contains('hello'));
但我正在尋找動態的linq解決方案
謝謝。
現在找到我的答案。
var q = obj.Where("message.Contains(@0)", "hello");
我知道這不是你想要的,但是要考慮一下:
根據您希望執行的各種操作的數量,我會創建一個switch語句來處理這個問題。
舉個例子,一些使用枚舉的偽代碼:
(如果需要,OperationType是枚舉)
private object example(OperationType optype, Object obj, String match)
{
var q;
switch (optype)
{
case OperationType.Contains:
q = obj.Where(o => o.message.Contains(match));
break;
case OperationType.EndsWith:
q = obj.Where(o => o.message.EndsWith(match));
break;
case OperationType.StartsWith:
q = obj.Where(o => o.message.StartsWith(match));
break;
}
return q;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.