我的容器对象包含专用的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