我在Windows上使用protoc
3.0.0 beta 3从.proto
文件生成C#代码。从beta 2到beta 3的变化改变了我的枚举值(更糟)。在proto
文件中有一个如此定义的枚举:
enum AnEnum {
ABC = 0;
WORD = 1;
DEF = 2;
}
现在最终生成的代码如下:
public enum AnEnum {
[pbr::OriginalName("ABC")] Abc = 0,
[pbr::OriginalName("WORD")] Word = 1,
[pbr::OriginalName("DEF")] Def = 2,
}
我对Word
很好,但Abc
和Def
是错误的,因为它们是缩写。有没有办法覆盖特定的枚举案例(甚至特定枚举的所有枚举案例)来传递原始值?
否则看起来我必须用我自己的新枚举来包装生成的枚举,但我宁愿不复制定义。