1

假设我们有一个模型属性,它是一个集合并且为空。像这样。

public ICollection<Model> ChildrenById
{
    get
    {
        return Children
            .OrderBy(c => c.Id)
            .ToList();
    }
}

实体同时出错并说它Children为空。我们可以通过使用if语句并Children首先检查是否为空来解决这个问题,但是有没有办法让实体返回一个空列表呢?谢谢你。

4

3 回答 3

2

我会让返回 Children 的属性永远不会返回 null。

*编辑

于 2012-05-04T12:07:22.640 回答
1
public ICollection<Model> ChildrenById
{
    get
    {
        return Children == null 
            ? new List<Model>() 
            : Children
               .OrderBy(c => c.Id)
               .ToList();
    }
}
于 2012-05-04T12:06:47.143 回答
0

您可以对列表本身进行排序,而不是使用属性;

Children.Sort((x, y) => x.Id.CompareTo(y.Id)); 
于 2012-05-04T12:17:35.337 回答