扩展方法仅在调试时抛出异常

时间:2013-02-27 03:05:00

标签: c# exception extension-methods

我使用以下扩展方法(from an existing StackOverflow question)将现有的可枚举分割为两个:

public static IEnumerable<IEnumerable<T>> Split<T>(this IEnumerable<T> list, int parts)
{
    int i = 0;
    var splits = from item in list
                 group item by i++ % parts into part
                 select part.AsEnumerable();
    return splits;
}

我正在使用这样的方法:

//accountIds is simply an IEnumerable<string>
var foo = accountIds.Split(2).ToList();

当我运行我的应用程序时,该方法似乎正常工作。但是,当我调试我的应用程序时,这行代码总是抛出异常:

Object reference not set to an instance of an object.

我很困惑为什么这个方法只在我调试时抛出异常。

1 个答案:

答案 0 :(得分:0)

我不确定这一点,但我认为你应该先评估一下。您可以使用.ToArray().ToList()方法。

查看Jon Skeet blog获取的变量。