当前位置:编程学习 > C#/ASP.NET >>

.net 判断一个对象是否是Dictionary类型

  小弟是新手,刚学.net,现在用反射方法获取一个对象的类型,那我要判断这个类型是否是Dictionary,如何做? --------------------编程问答-------------------- GetType不就知道了吗 --------------------编程问答-------------------- 方法1;
if(obj is Dictionary)
{
  //是Dictionary
}
方法2;
Dictionary dic = obj as Dictionary;
if(dic != null)
{
  //是Dictionary
}

如果仅仅是判断推荐第一种,如果是要类型转换,推荐第二种,因为is这个操作本身底层需要反射,相对来说比较耗资源,直接转换效率更好。 --------------------编程问答-------------------- if(obj is Dictionary)
{
  //是Dictionary
} --------------------编程问答-------------------- 楼上的都可以 --------------------编程问答-------------------- GetType 获取下类型 --------------------编程问答-------------------- 如果知道Dictionary的类型T1, T2,就可以直接
if (obj is Dictionary<T1, T2>)
否则可以
if (obj.GetType().GetInterfaces().Where(o => o == typeof(IDictionary)).Count() > 0)
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,