【问题标题】:LINQtoSql - how to wildcard search based on string arrayLINQtoSql - 如何基于字符串数组进行通配符搜索
【发布时间】:2013-04-11 15:33:20
【问题描述】:

在我们的一个表中,有一个逗号分隔的关键字字段,是否有任何直接的 LINQtoSQL 方法可以从字符串数组中搜索每个关键字?

只有在字段中有一个关键字时才返回

    Dim q = (From l In db.ListingViews
             Where keywordsarray.Contains(l.Keywords)
             Select l).ToList

我发现解决这个问题的唯一方法是获取整个表然后搜索它 - LINQtoSQL 不支持这种方式的 .any 并且 .contains 只会采用一个字符串。

  Dim q = (From l In db.ListingViews
                     Select l).ToList


            Dim q2 = (From b In q
                      Where keywordsarray.Any(Function(s) b.Keywords.Contains(s))
                     Select b).ToList


            Return q2

【问题讨论】:

    标签: .net vb.net linq linq-to-sql


    【解决方案1】:

    你可以使用SqlMethods.Like方法:
    http://msdn.microsoft.com/en-us/library/bb355235.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-24
      • 1970-01-01
      • 2011-12-12
      • 1970-01-01
      相关资源
      最近更新 更多