zoukankan      html  css  js  c++  java
  • 枚举.NET的基本类型

    在使用反射的时候,有时候要根据不同的类型做不同的操作。其中要做的一件事是枚举.NET的基本类型。由于进行.NET开发,已经对.NET的基本类型较了解,可能会使用下面的代码进行枚举:

    Type objectType = obj.GetType();
    if(objectType == typeof(string))
    {
        // DO sth
    }
    else if(objectType == typeof(int) || objectType == typeof(int?))
    {
        // DO sth
    }
    else if(objectType == typeof(enum))
    {
        // DO sth
    }
    // more else


    这样做有一点不好,有时候要为漏掉某个基本而苦恼。
    原来.NET FX中有相应的类型和方法可以做得更好:使用 Convert.GetTypeCode 获取一个值,而这个值是 TypeCode 枚举值中的一个。这样就简单了。

    TypeCode code = Convert.GetTypeCode(obj);
    switch(code)
    {
        case TypeCode.String:
        // DO sth
        break;

        case TypeCode.Int:
        // DO sth
        break;
        // case ...
    }

    这样除了代码看起来优雅外,还可以避免列举不全的问题。

  • 相关阅读:
    随机色块
    JQ命令汇总
    JQ选择器
    cookie
    tab切换
    Ajax跨域
    RocksDB介绍:一个比LevelDB更彪悍的引擎
    谷歌的诀窍:如何取消验证码
    Ruby on Rails创始人DHH谈如何进行混合移动APP开发
    SequoiaDB 架构指南
  • 原文地址:https://www.cnblogs.com/qkhh/p/2441386.html
Copyright © 2011-2022 走看看