我该如何工作?
switch(property.PropertyType){
case typeof(Boolean):
//doStuff
break;
case typeof(String):
//doOtherStuff
break;
default: break;
}
我不想使用该名称,因为类型的字符串比较非常糟糕,并且可能会发生变化。
最佳答案
System.Type propertyType = typeof(Boolean);
System.TypeCode typeCode = Type.GetTypeCode(propertyType);
switch (typeCode)
{
case TypeCode.Boolean:
//doStuff
break;
case TypeCode.String:
//doOtherStuff
break;
default: break;
}
您可以对TypeCode.Object使用混合方法,如果使用typeof,则可以在其中进行动态处理。这非常快,因为对于第一部分-开关-编译器可以根据查找表进行决定。