在我的项目中,我想使用 T4 生成我的枚举。为了对此进行测试,我创建了一个具有简单表单的测试项目。在这个项目中,我添加了一个 .tt 文件并将我的代码放入该文件。
一切正常,但我有点失望。我认为当项目被执行时,T4 会生成枚举。所以枚举总是最新的。但事实并非如此,对吧?如果要更新枚举,则必须手动执行此操作并重建解决方案。我的问题是,我在这方面是否正确?或者我错过了什么。
其次,我为什么要使用T4来创建枚举?我的意思是,如果枚举发生变化,我必须重建我的解决方案。
编辑: 我从数据库表中获取枚举值。该表只有2个字段:Id和Description
最佳答案
老实说,我认为这不值得付出努力。您仍然需要返回并更新您的代码以处理任何新值。您能做的最好的事情就是确保您的 switch 语句有一个默认情况。
switch (enumValue)
{
// ...
default:
throw new InvalidOperationException(
"The enum value " + enumValue + " is unhandled."
);
}
关于C# 使用 T4 生成枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3915796/