我正在爲我的應用程序構建一個篩選器,允許用戶篩選多個屬性上的自定義對象集合。爲了清晰起見,我提供了一個屏幕截圖,我正在實施的是左上角的淺藍色控制: 基於UI輸入動態構建linq查詢
想法是,對於每個選中複選框並填寫文本的字段,子查詢將被添加到搜索中,並由「AND」加入。我需要對子查詢進行相當精細的控制,因爲它們有其特定的細節。例如,「ON優美」爲目標對象上的字符串列表,所以查詢應該是這樣的:
Where(k => k.OnYomi.Contains(tb_OnYomi.Text))
「意」希望做一個全文檢索,類似String.Contains或LIKE, 「筆畫計數」將需要一些解析,因爲它必須支持範圍,例如,如果您鍵入5-8,則查詢應該如下所示:(x> = 5 & & x < = 8)。 「其他」需要根據組合框中的哪個值選擇不同的屬性。
我發現這個MSDN上,並坦率地說,我不能做它的正面或反面: https://msdn.microsoft.com/en-us/library/bb882637.aspx
有人能提供一個更好的解釋或更易於理解的例子嗎?謝謝。