我的查询看起来像这样......
string value
return DataContext.Tags.Where(t => t.Keys.Any(k => k.Ring.RingName == category))
.Where(t => t.Keys.Any(k => k.Ring.Keys.Any(c => c.Tag.TagName == value)));
它运作良好,我喜欢它。但它需要做一些额外的事情。 'value'字符串实际上是一个字符串[] - 有没有办法基本上改变最后一个lambda来说'如果TagName匹配在这个字符串[]'中找到的任何东西?
答案 0 :(得分:3)
像这样:(未经测试)
string[] values
return DataContext.Tags.Where(t => t.Keys.Any(k => k.Ring.RingName == category))
.Where(t => t.Keys.Any(k => k.Ring.Keys.Any(c => values.Contains(c.Tag.TagName))));
答案 1 :(得分:0)
如果您无法更改价值声明 c =>(新列表(值))。包含(c.Tag.TagName)
如果可以,可以将其声明为List吗?