Mat*_*ins 6 c# linq entity-framework
我有一个ID号的集合,我希望返回一些对象,我是通过使用linq语句来实现的,其中使用了包含语句的地方:
var recentCats = (from i in EntityCache.Default.GetAll<Categories>()
where WebProfile.Current.RecentlyCreatedCategories.Contains(i.Id)
&& BoundCategory.ParentItemClass.Id.Equals(i.ParentItemClass.Id)
select new CategoryInfo()
{
Category = i,
ClassId = i.ParentItemClass.Id,
ClassImage = NamedResourceManager.GetResourceBinary(i.ParentItemClass.NameResourceId)
});
Run Code Online (Sandbox Code Playgroud)
这完全正常,除了我想保持返回集合中的项目顺序与它们在列表中的顺序相同.例如,如果我有一个ID列表:14,603,388,我想要返回的对象的顺序不同,而不是缓存返回的顺序.有没有办法在实体框架中执行此操作,或以任何方式执行此操作而不涉及我编写foreach循环?
谢谢
对于任何感兴趣的人,我可以通过加入他们来让他们按照与列表相同的顺序出现,正如雷在上面的评论中提到的那样。
var recentCats = (from i in WebProfile.Current.RecentlyCreatedCategories
join b in allCats
on i equals b.Id
where BoundCategory.ParentItemClass.Id.Equals(b.ParentItemClass.Id)
select ...
Run Code Online (Sandbox Code Playgroud)
再次感谢您的所有帮助和回答。
| 归档时间: |
|
| 查看次数: |
2151 次 |
| 最近记录: |