system.collections.generic.IEnumerable错误

时间:2018-08-09 17:56:48

标签: c# arrays list decimal

我有这堂课

Сlass Orderbook
{
public List<decimal[]> Bids { get; set; }
public List<decimal[]> Asks { get; set; }
}

我要这样插入

orderbook.Bids.InsertRange(i, Convert.ToDecimal(e.LastOrder.Changes[0][0]));

但是我得到一个错误 无法从十进制转换为system.collections.generic.IEnumerable [] 我在做什么错了?

1 个答案:

答案 0 :(得分:1)

您有一个数组列表。 InsertRange需要一个“范围”,例如IEnumerable<T>。在您的情况下,类型(T)是一个数组:

因此,为了不使其变得更复杂:这应该起作用:

orderbook.Bids.Insert(i, new decimal [] {Convert.ToDecimal(e.LastOrder.Changes[0][0]}));

我要做的是以下事情:

使用小数列表(不是数组):

class Orderbook
{
    public List<decimal> Bids { get; set; }
    public List<decimal> Asks { get; set; }
}

并添加如下出价:

orderbook.Bids.Insert(i, Convert.ToDecimal(e.LastOrder.Changes[0][0]));