1.以下语句返回ISeriesPoints[]
MySeries.Points.Where(o=>o.DateTimeArgument>beginTime).ToArray();
2.AddRange方法需要一个SeriesPoints类型
MySeries.Points.AddRange(SeriesPoints);
如何将语句1中的ISeriesPoints[]转为2中的SeriesPoints
你这个seriespoints是继承接口ISeriesPoints的吗,MySeries.Points又是一个什么类型呢?
//我不想实现啥复杂接口了,就随便找个简单的接口
//初始化你说的points
IDisposable[] points = new IDisposable[]
{
new Test() { A = 1 }, new Test() { A = 1 }, new Test() { A = 2 },
new TestB()//我故意混一个其他类型的
};
//此刻我们有很多种方法完成你的要求,我说一下最常用的2种
//1.直接oftype从里面提取出符合type的元素
var re1 = points.OfType<Test>().Where(p => p.A == 1).ToList();
//2.where约束type然后cast
var res4= points.Where(p => p is Test).Cast<Test>();
Console.ReadKey();
public class Test:IDisposable
{
public int A { get; set; }
public void Dispose()
{
}
}
public class TestB : IDisposable
{
public void Dispose()
{
}
}