我有對象= {OBJ1,OBJ2,OBJ 3}是否可以在對象列表中查找對象的類?
每一個類的對象是從同一個界面
interface IObjects
class Obj1:IObjects
class Obj2:IObjects
class Obj3:IObjects
繼承的名單,我想找到OBJ1類對象examp。 如何做到這一點?
我有對象= {OBJ1,OBJ2,OBJ 3}是否可以在對象列表中查找對象的類?
每一個類的對象是從同一個界面
interface IObjects
class Obj1:IObjects
class Obj2:IObjects
class Obj3:IObjects
繼承的名單,我想找到OBJ1類對象examp。 如何做到這一點?
你可以這樣做:
var listOfObject1s = objects.Where(o => o is Obj1).ToList();
if(obj.GetType() == typeof(Obj1))
{
// obj is an Obj1!
}
迭代通過列表和檢查
item is Obj1
LINQ的方法:在
IObjects[] objList = new IObjects[] { obj1,obj2,obj3 };
obj1 o1 = objList.Where(o => o.GetType() = typeof(Obj1)).First();
呼叫的GetType()您目的。 see here。希望這有助於
如果一個對象爲'null',則會引發異常 – ntziolis 2012-03-15 16:36:11