假设我们有一个允许用户下载内容的项目.在主页面上,我想显示下载次数最多的下载文件!所有使用EF.
我怎样才能做到这一点 !!我用Group By尝试了很多东西(当你在对象中获得大量信息时,这是一场噩梦).我仍然不知道如何做到这一点……
var query = from details in m_context.TransactionDetails
where details.Chanson != null
group details by details.Items into AnItem
orderby AnItem.Count()
select new Item() {
IdItem = Chansons.Key.IdItem,
ItemState= Chansons.Key.ItemState,
[...This object got something like 20 including links to other objects ... ]
};
有人有想法吗?
谢谢:o)
哦,对不起我的英语,我尽我所能,但我来自魁北克(Usualy talk french).
最佳答案 萨吕!
我会在这里稍微猜测一下你的数据模型,但我认为你不需要分组:
var query = from details in m_context.TransactionDetails
where details.Chanson != null
orderby details.Items.Count() descending
select new Item
{
IdItem = details.Chanson.IdItem,
ItemState= details.Chanson.ItemState,
// ...
};
Bonne的机会!
更新:对于专辑:
var query = from details in m_context.TransactionDetails
where details.DisqueCompact != null
orderby details.Items.Count() descending
select new Item
{
IdItem = details.DisqueCompact.IdItem,
ItemState= details.DisqueCompact.QuelqueChose...
// ...
};
根据您的数据模型,您可能需要两个查询.