标签类是
public class Tags
{
public int TagId;
public string Tag;
public string TagLink;
public int TagCount;
}
我的查询是
var v = db.QuestionTags
.GroupBy(n => n.Tag.Tag1)
.Select(n => new Tags
{
Tag = n.Key,
TagCount = n.Count()
}
)
.OrderByDescending(n => n.TagCount);
上面方法的问题是我无法同时映射
TagId
和TagLink
。我该如何解决? 最佳答案
假设对于每个Tag
您都有唯一的TagId
和TagLink
,则可以使用First()
进行设置:
var v = db.QuestionTags
.GroupBy(n => n.Tag.Tag1)
.Select(n => new Tags {
Tag = n.Key,
TagCount = n.Count(),
TagId = n.First().TagId,
TagLink = n.First().TagLink
})
.OrderByDescending(n => n.TagCount);
如果同一
Tag
的这些属性可能不同,请按其组合进行分组:var v = db.QuestionTags
.GroupBy(n => new {n.Tag.Tag1, n.TagId, n.TagLink})
.Select(n => new Tags {
Tag = n.Key.Tag1,
TagCount = n.Count(),
TagId = n.Key.TagId,
TagLink = n.Key.TagLink
})
.OrderByDescending(n => n.TagCount);