为返回接口集合的方法返回类型类的集合

时间:2017-05-23 16:00:32

标签: c#

我有一个接口ISensor,它有一个返回接口类型ISensorMeasurement列表的方法。然后我实现ISensor并想知道是否有办法返回实现ISensorMeasurement的集合。

例如,SensorModel.GetMeasurementsInRange<TemperatureMeasurement>方法返回List<TemperatureMeasurement>TemperatureMeasurement实现ISensorMeasurement,但编译器并不喜欢我返回此类型。

为简单起见,我已将界面和类减少到最低限度。

public interface ISensor
{
    int Id { get; set; }

    List<ISensorMeasurement> GetRangeOfMeasurements(DateTime startDate, DateTime endDate);
}

public class TemperatureSensor : ISensor
{
    public int Id { get ;; }
    private SensorModel SensorModel { get; set; } = new SensorModel();

    public List<ISensorMeasurement> GetRangeOfMeasurements(DateTime startDate, DateTime endDate)
    {
        return SensorModel.GetMeasurementsInRange<TemperatureMeasurement>(Id, startDate, endDate);
    }
}

0 个答案:

没有答案