C#判断对象类型为值类型、字符串、对象引用类型或泛型

  C#判断对象类型为值类型、字符串、对象引用类型或泛型


C# Code:

internal static void TestObjectType()
{
  
object oValue = 1; //值类型:IsValueType=True, IsClass=False
  
object oString = "字符串";//字符串:IsValueType=False, IsClass=True, 需要多重判断(o is String)
  
object oObject = new StringBuilder();//对象:IsValueType=False, IsClass=True
  
object oGeneric = new List<Object>();//泛型
  
object oRef = oGeneric;//引用类型(与被引用的对象测试一致)
  

  Test(oValue);
  Test(oString);
  Test(oObject);
  Test(oGeneric);
  Test(oRef);
}

//来源:C/S框架网 | www.csframework.com | QQ:23404761




C# Code:

private static void Test(object o)
{
  Type T
= o.GetType();
  
  
bool isValueType = T.IsValueType;//值类型
  
bool isClass = T.IsClass;//类类型(对象类型)
  
bool isGenericType = T.IsGenericType;//泛型
  
bool isConstructedGenericType = T.IsConstructedGenericType;//对象为构造泛型类型
  
}
  
  
//来源:C/S框架网 | www.csframework.com | QQ:23404761






版权声明:本文为CSFramework文库发布内容,转载请附上原文出处连接
C/S框架网
发表评论

评论内容
昵称:
关联文章

C#判断对象类型类型字符串对象引用类型
C#.Net类型引用类型区别
C# 动态对象转换实体对象支持(DynamicToEntity)
C# 使用List读取和保存文本文件
C# 日期(DateTime?)扩展方法 DateTimeExtension
IDatabase.ExecuteReader返回对象列表Func函数的使用方法
TypeConverter.ConvertFromString 通用方法:字符串转换具体的类型
C#类扩展方法,字符串对象转换,常用扩展方法StringExtensions
C# 自动计算字符串公式的(三种方式)
C# 克隆对象、复制对象(浅拷贝)、复制对象相同属性的
C#对象转DataRow,主键自动生成
C#面向对象设计(OOP)之对象多态(Polymorphic)
C#日期类型转换工具(时间戳,字符串,long,byte类型互转)
SQL判断两个带有分隔符的字符串是否重叠
命名空间"FastReport"中不存在类型命名空间名称"Export"。是否缺少程序集引用?
C#.NET 对象(字符串)转换常用扩展方法
C#.NET给DataTable日期类型的列赋值报错:所需类型是 MySqlDateTime,类型与列类型不匹配
vs编译ASP.NET提示失败1个,error CS0246: 未能找到类型命名空间名“CSFrameworkV5”(是否缺少 using 指令程序集引用?
C#数据转换类ConvertEx,封装.Net的Convert对象
C#.Net 持久化对象XML文件