代码之家  ›  专栏  ›  技术社区  ›  James

Linq to SQL-如何按不在select中的列动态筛选

  •  1
  • James  · 技术社区  · 17 年前


    Dim resultA = From logItem In dc.Log 
    Where logItem.Message.Contains(searchText) 
    Select logItem.LogID, logItem.DateLogged
    

    Dim resultB = From logItem In dc.Log 
    Select logItem.LogID, logItem.DateLogged
    
    If (Not String.IsNullOrEmpty(searchText)) Then 
        resultB = q.Where(Function(logItem) 
        logItem.Message.Contains(searchText))
    End If
    

    2 回复  |  直到 17 年前
        1
  •  1
  •   Steven    17 年前

    Dim resultA = From logItem in dc.Log Select logItem
    
    If (Not String.IsNullOrEmpty(searchText)) Then resultA = q.Where(Function(logItem) logItem.Message.Contains(searchText))
    
    resultA = from logItem in resultA Select logItem.LogID, logItem.DateLogged
    

        2
  •  0
  •   James    17 年前

    谢谢你的意见,史蒂文。你的建议引起了我的思考,我的最终解决方案就是基于此。但是,我找到了一种重用同一对象的方法,即使用Lambda表达式在末尾指定select(与where语句的方式相同):