我从另一个函数调用此函数:
private static IEnumerable<MovingAverage> SimpleMovingAverage(
IEnumerable<IexTradingStock> queue, int period)
.
. (omitted code)
.
{ return movingAverages;
这是调用MovingAverage的函数:
MovingAverage SMA = new MovingAverage();
SMA = SimpleMovingAverage(stocks, period);
我在这条线上出现错误“ SMA = SimpleMovingAverage(stocks,period);”错误是“无法将类型'System.Collections.Generic.IEnumerable'隐式转换为'myBackEnd.Models.MovingAverage'的显式转换(您是否缺少类型转换)
最佳答案
您的函数返回类型应该是IEnumerable而不是单个对象。声明此函数后,将其返回类型设置为IEnumerable,但是在return语句中时,您将返回MovingAverage的单个对象。返回的对象应该与您声明的返回类型相同。其次,当您从SimpleMovingAverage(stocks,period)获取列表时;并在MovingAverage SMA中设置列表= new MovingAverage();是错的。它应该是。
IEnumerable<MovingAverage> SMA = SimpleMovingAverage(stocks, period);
关于c# - 将函数的返回IEnumerable <MovingAverage>值分配给另一个对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53248321/