我的容器對象包含專用的List<AbstractBaseClass>
和幾個從AbstractBaseClass派生的具體類型的公共列表。對象通過Add(AbstractBaseClass ABC)
方法通過引用AbstractBaseClass添加到容器類中。從抽象引用列表中生成具體對象的列表
公共列表被從LINQ查詢生成上請求
public List<ConcreteClass> ConcreteList
{
get
{
return
from a in _abc
Where a is ConcreteClass
select(a as ConcreteClass)
}
}
這是一個可以接受的方法?對象是否在此處投入ConcreteClass兩次,效率不高。
需要考慮的事項:[是或是不是?](http://blogs.msdn.com/b/ericlippert/archive/2010/09/16/is-is-as-or-is- as-is.aspx) – 2012-03-05 15:47:50