我知道很多:Linq2Sql不支持很多,但我正在研究解决方法
我正在使用我的小SO克隆,我有一个带有问题的表和一个带有标签和链接表QuestionTag的表,所以我有一个经典的很多:问题和标签之间的很多关系。
要在首页显示问题列表,我有这个类,我想从Linq2Sql查询中填写
public class ListQuestion
{
public int QuestionID { get; set; }
public string Title{ get; set; }
public IEnumerable<Tag> Tags { get; set; }
}
public IEnumerable<ListQuestion> GetQuestions()
{
from q in Questions
.................
select new ListQuestion{ ... }
}
问题是我应该如何填写Tag集合。 我发现在单个查询中不可能这样做,所以我将其分为2个查询,1个用于获取问题,1个用于获取标记,然后尝试加入它们。 我知道很多:实体框架支持很多,所以他们是如何做到的?你会怎么做?任何替代方法?查询当然应该是有效的。
答案 0 :(得分:4)
这可能适用于您的情况;
from q in Questions
select new ListQuestion
{
Tags = q.QuestionTags.Select(qt => qt.Tag),
QuestionId = q.ID,
Title = q.Title
}