我有两张有一对多关系的表格(文章和标签)。
我记得在某处我可以从该关系中创建嵌套对象/数组/等。我希望以(JSON格式)格式输出:
{1 : {
id : 1,
title : 'article title',
tags : ({
id : 16,
tagname : 'first tag'
},{
id : 23,
tagname : 'another tag'
})
}
我正在创建一个内部知识库系统,其列表视图类似于堆栈溢出的首页(这就是我想要显示标记的方式)。
我该怎么做呢?一个子查询?感谢。
答案 0 :(得分:2)
如果我正确理解了您的问题,那么您正在寻找SelectMany
函数,它可以让您“展开”像您这样的嵌套结构。 SelectMany
确实在查询语法中通过子查询执行:
IEnumerable<Tag> =
from article in Articles
from tag in article.Tags
select tag;
以方法形式:
IEnumerable<Tag> tags = Articles.SelectMany(a => a.Tags);