在我的数据库中,我有一个Enum字段。我想将这些枚举属性放在C#中的List中。 我搜索但我找不到答案。这可能吗? 我使用MySqlDatabase。如果我想从数据库中获取行,我使用:
using (var uow = new UnitOfWorkScope<TrackerEntities>(UnitOfWorkScopePurpose.Reading))
在我的应用程序中,我使用实体框架
答案 0 :(得分:1)
如果您在数据阅读器中加载数据,则这是sql-server
方式。但请点击此处将string
转换为enum
var list = new List<YourEnumType>();
var field= reader["DBFieldName"] != DBNull.Value ? reader["DBFieldName"].ToString()
: "";
var myField=(YourEnumType) Enum.Parse(typeof(YourEnumType ), field);
list.Add(myField);
另请查看The ENUM Type
答案 1 :(得分:0)
您需要针对架构表进行查询以列出枚举值。
SELECT COLUMN_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = @TABLE_NAME AND
COLUMN_NAME = @COLUMN_NAME