【发布时间】:2019-07-03 09:09:41
【问题描述】:
public interface IValue
{
int id {get; set;}
float val {get; set;}
}
public class Value:IValue
{
public int id {get; set;}
public float val {get; set;}
}
public interface IIvalueIEnum<T>
where T:IValue
{
IEnumerable<T> list {get; set;}
}
public class Collection:IIvalueIEnum<Value>
{
public List<Value> list {get; set;}
}
这个怎么做?我收到“集合无法实现 IIvalueIEnum,因为它没有匹配的 IEnumerable 返回类型
【问题讨论】:
-
错误信息很清楚。该属性应具有与接口中指定的签名相同的签名。这意味着
List<Value> list不能被视为IEnumerable<Value> list的实现 -
根据界面要求将
Collection.list的类型改为IEnumerable<Value>。
标签: c# generics interface ienumerable