Ballerina定义MembershipStatus枚举遇报错,如何正确设置RE-INVITED?
解决枚举成员
RE-INVITED的定义错误问题 枚举成员的标识符不能包含减号(-),编译器会把减号识别为减法运算符,尝试对前后的字符做运算,因此抛出“operator '-' not defined for 'string'”的错误。
以下是几种正确的定义方式:
用下划线替换减号(最常用的枚举命名规范):
public enum MembershipStatus { INVITED, REGISTERED, DEACTIVATED, RE_INVITED }保留内部合法名称,指定对外显示的文本(适用于需要友好展示名称的场景,以C#为例):
借助特性给枚举成员绑定自定义字符串值,后续可通过反射读取该值用于展示:using System.ComponentModel; using System.Runtime.Serialization; public enum MembershipStatus { INVITED, REGISTERED, DEACTIVATED, [Description("RE-INVITED")] [EnumMember(Value = "RE-INVITED")] REINVITED }采用帕斯卡命名法:
如果团队命名规范允许,也可以使用首字母大写的驼峰式命名:public enum MembershipStatus { Invited, Registered, Deactivated, ReInvited }
内容的提问来源于stack exchange,提问作者Malintha Ranasinghe
相关产品推荐
相关产品推荐

