有没有办法在c#上获取所有Sql数据类型的列表?
我知道我们有一个名为SQlDbType的Enum,其中包含所有Sql数据类型,但是我们可以将Enum转换为字符串数组吗?
我只想获得一些包含所有Sql数据类型的列表,而不是逐个编写它们并将它们添加到我的字符串数组中。
答案 0 :(得分:5)
枚举字符串数组非常简单:
var names = Array.ConvertAll((SqlDbType[]) Enum.GetValues(typeof(SqlDbType)),
type => type.ToString());
或使用LINQ:
var names = Enum.GetValues(typeof(SqlDbType))
.Cast<SqlDbType>()
.Select(x => x.ToString())
.ToArray();
或者更愉快地使用我的Unconstrained Melody库,作为数组或(更有效地)不可变列表:
string[] names = Enums.GetNamesArray<SqlDbType>();
IList<string> namesList = Enums.GetNames<SqlDbType>();