【问题标题】:LINQ To Datatable using "Any" with a List使用带有列表的“任何”的 LINQ To Datatable
【发布时间】:2014-09-16 13:36:05
【问题描述】:

好吧,我就是听不懂。我正在尝试使用 where 子句中的字符串列表遍历数据表,但我无法让它工作。

这就是我正在尝试的:

If d = "IN" Then
    lInOutStrings.Add("Parts in")
Else
    lInOutStrings.Add("Inventory")
    lInOutStrings.Add("Repairs")
End If

For Each part In (From u In dtParts.AsEnumerable() _
                  Where u.Field(Of String)("INVT_TYPE").Any(Function(s) u.Field(Of String)("INVT_TYPE").Contains(lInOutStrings.ToString))
                  Select New With {....}) 

      ...

Next

问题是查询总是什么都不返回。我从LINQ: Entity string field contains any of an array of strings 得到了什么,但我无法完成查询。我做错了什么?

我正在使用 VB.Net 2010 和 .Net 4.0

【问题讨论】:

  • 尝试用Where lInOutStrings.Contains(u.Field(Of String)("INVT_TYPE"))替换where子句

标签: .net vb.net linq


【解决方案1】:

反之亦然,查看列表,而不是字符串(这是一个IEnumerable(Of Char)):

Dim query = From u In dtParts.AsEnumerable() 
            Where lInOutStrings.Contains(u.Field(Of String)("INVT_TYPE"))
            Select New With {....}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多