使用 Entity Framework,我有以下代码返回一个列表:
private List<string> MyList()
{
using (MyEntities ctx = new MyEntities())
{
var myList= from a in ctx.Foo
orderby a.Bar
select a.Bar;
return myList.ToList();
}
}
这段代码可以正常工作,但我想要一个不同的列表。为了实现这个目标,我尝试了以下代码,在选择器中添加了.Distinct():
private List<string> MyList()
{
using (MyEntities ctx = new MyEntities())
{
var myList= from a in ctx.Foo
orderby a.Bar
select a.Bar.Distinct();
return myList.ToList();
}
}
不幸的是,这段新代码导致错误:
无法隐式转换类型“System.Collections.Generic.List(System.Collections.Generic.IEnumberable(char))”为“System.Collections.Generic.List(string)”
然后我尝试了此代码,它确实给了我一个清晰的列表,但现在似乎排序不起作用了,因为结果是未排序的:
private List<string> MyList()
{
using (MyEntities ctx = new MyEntities())
{
var myList= (from a in ctx.Foo
orderby a.Bar
select a.Bar).Distinct();
return myList.ToList();
}
}
有什么方法可以返回一个不重复且排序过的列表吗?