为什么我不能将此linq的集合属性重新排序为sql对象?

时间:2010-12-18 21:13:28

标签: c# linq linq-to-sql

我有这样的linq to sql语句:

StreamEntry se = GenesisRepository.StreamEntry.FirstOrDefault( x => x.seID = 1);

然后我尝试重新排序一些相关的表行,如下所示:

if ( se.FieldInstance != null)
{
    se.FieldInstance = se.FieldInstance.OrderBy(x => x.fiOrder);
}

不幸的是,这给了我一个编译器错误:

Cannot implicitly convert type
'System.Linq.IOrderedEnumerable<Genesis.Domain.Entities.FieldInstance>'
to 'System.Data.Linq.EntitySet<Genesis.Domain.Entities.FieldInstance>'

我怎么能做到这一点?

2 个答案:

答案 0 :(得分:1)

您无法将查询重新分配给se.Fieldnstance,因为它的类型错误。更改类型,或将查询存储在其他位置:

IOrderedEnumerable<Genesis.Domain.Entities.FieldInstance> fieldInstance = null;
if ( se.FieldInstance != null)
{
    fieldInstance = se.FieldInstance.OrderBy(x => x.fiOrder);
}

答案 1 :(得分:0)