我有一个返回元素的泛型方法(在非泛型类中)。
public IEnumerable<T> GetElements<T>() where T : class
{
foreach (Element element in elements)
{
if (element is T)
{
yield return element as T;
}
}
}
我想在getter方法中转换此函数并尝试类似
的方法 public IEnumerable<T> Elements<T>
{
get
{
foreach (Element element in elements)
{
if (element is T)
{
yield return element as T;
}
}
}
}
这不会编译:{{1}}
有人知道问题在这里吗?
感谢
答案 0 :(得分:7)
属性不支持通用参数。
实现此类目的的唯一方法是为封装类型提供泛型类型参数。