用于搜索特定字符串的相关 (1:m) 记录的 LINQ 查询是什么?
我以为我会很容易找到答案,但到目前为止还没有。我有相关的表格——博客和标签。标签架构如下所示:
TagTableID (identity column)
BlogID (foreign key)
Tag (string)
这些表在 SQL Server 中是相关的。每个博客条目可以有多个标签,博客条目的每个标签都会在标签表中生成一个新条目。我想搜索其中包含特定标签的博客条目。我可以在 Linq 中执行此操作:
var blogQuery =
from blogentry in blog.blogs
where blogentry.Tags = [??]
select blogentry;
由于每个博客条目有多个标签,因此 blogentry.Tags 在 Linq 中可用并返回 EntitySet。但我不知道如何搜索(我猜)结果集合以查找特定字符串。 (上面示例中显示 [??] 的部分。)
我怀疑这需要更复杂的查询,但这就是我开始的地方......
I thought I'd find an answer readily, but not so far. I have related tables -- Blog and Tags. The Tags schema looks like this:
TagTableID (identity column)
BlogID (foreign key)
Tag (string)
The tables are related in SQL Server. Each blog entry can have multiple tags, and each tag for a blog entry generates a new entry in the Tags table. I want to search for blog entries that have specific tags in them. I can do this in Linq:
var blogQuery =
from blogentry in blog.blogs
where blogentry.Tags = [??]
select blogentry;
Since there's multiple tags per blog entry, blogentry.Tags is available in Linq and returns an EntitySet. But I don't know how to search (I guess) the resulting collection to find a specific string. (The bit where it says [??] in the example above.)
I suspect this requires a more complex query, but this is where I've started ...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我假设您使用的是 Linq 2 SQL 或 Linq 2 实体?
我没有对此进行测试,但我相信类似的操作应该有效:
不过,请使用 SQL 探查器验证生成的 SQL。
I assume you're using Linq 2 SQL or Linq 2 Entities?
I didn't test this, but I believe something like this should work:
Do verify the resulting SQL with SQL profiler though.