-3

我正在使用 OrderBy 创建一个新的排序数组,如 post Sort array of items using OrderBy<>中所建议的那样。

var sorted = sharepointList.OrderBy(item => item.GetTabOrder()).ToArray();

其中,sharepointList 是包含 int tabOrder 等属性的对象数组,GetTabOrder 是“tabOrder”属性的获取器

但这会引发以下异常。请帮忙

空引用异常

你调用的对象是空的。

提前致谢, Sagarika

4

3 回答 3

0

问题是您的sharepointList. 如果你这样做;

  var sorted = sharepointList.Where(x => x != null).OrderBy(item => item.GetTabOrder()).ToArray();

它将防止异常,但空值将从您的结果中排除。

您的整个列表可能为空,在这种情况下您需要;

     if (sharepointList != null) 
         //order by in here
     else
         //handle error
于 2013-08-28T16:42:06.543 回答
-1

任一 sharepointList 为空

或项目为空

或 GetTabOrder() 中的某些内容为空

于 2013-08-28T16:41:55.877 回答
-1

使用 Visual Studio,您可以将鼠标传递到一个变量上方,VS 将弹出该变量的值(可以帮助您了解 null 的变量是什么)

于 2013-08-28T16:42:59.133 回答