2012-08-11 46 views
0

有没有一种方法可以用来动态创建枚举?我试图获取数据库中表的名称,并创建一个Enum的列表,我将在Visual Studio中编码时使用它。它甚至有可能吗?如何在C#中动态创建一个枚举?

我想我可以在数据库中得到表的名称,但后来的部分,我不知道它。

回答

2

您无法在运行时轻松创建枚举。

但是,你可以使用一个T4 template来查询数据库,并创建一个可以在编译代码文件。

+0

什么是T4模板? – Breeze 2012-08-11 23:53:34

+0

@Hossein - http://www.hanselman.com/blog/T4TextTemplateTransformationToolkitCodeGenerationBestKeptVisualStudioSecret.aspx – 2012-08-12 00:15:38

+0

@Damiel A.怀特:谢谢你这是一个非常好的开始;) – Breeze 2012-08-12 08:20:17

1

心不是这样做的方式,你可以手动创建一个代表数据库中的一个枚举,

也许这会更好,如果你使用Dictionary<int, string>

+0

我不想使用Dictionary <>,我想做一个使用数据库的类,所以我想创建一个可能性,当用户试图让从一个表中选择,需要一个表名的方法,接受一个枚举,并且当用户试图选择一个枚举,在他的项目中看到所有可用的表格。我试图通过以这种方式使用枚举来让编码器(可能是我自己)更容易。 – Breeze 2012-08-11 23:58:54