代码改变世界

C# 枚举相关操作——解析,遍历

2016-03-16 13:21  史林枫  阅读(547)  评论(0编辑  收藏  举报

我们在开发过程中,有时会让枚举作为数据源来绑定一些下拉列表,这时就需要解析枚举名称和值 。

先看一个枚举的定义:

 1 /// <summary>
 2     ///     数据库类型
 3     /// </summary>
 4     public enum DatabaseType {
 5         OleDb,
 6         SqLite,
 7         MssqlServer,
 8         MySql,
 9         Oracle,
10         Db2,
11         Other
12     }

1.使用所给的字符串匹配枚举类型

(DatabaseType) Enum.Parse(typeof (DatabaseType), "OleDb", true); // 最后一个参数 表示不区分大小写

2.获取枚举的字符串形式:

DatabaseType.MySql.ToString() // MySql

3.获取枚举的值

(int)DatabaseType.MySql;  // 3

4.根据值获取枚举类型

(DatabaseType)3;  //DatabaseType.MySql

5.根据所给枚举的字符串形式获取枚举的值

Enum.Format(typeof(DatabaseType), Enum.Parse(typeof(DatabaseType), "MySql"), "d")  // 3