我有以下枚举:
public enum GenderContract
{
Male,
Female,
Unknown
}
Run Code Online (Sandbox Code Playgroud)
但我从客户那里得到了'M','F'和'U'的值.
是否有通用的方法从枚举的第一个字符转换为实际的枚举项?(假设名称中没有冲突?)
我有几个这样的场景,我希望能够有一种通用的方法将部分匹配转换为枚举(如果可能的话)(而不仅仅是做一个switch语句或类似的东西).
简短的解决方案是使用'M','F'和'U'的char值
public enum GenderContract
{
Male = 77, // 'M'
Female = 70, // 'F'
Unknown = 80 // 'U'
};
Run Code Online (Sandbox Code Playgroud)
然后你就必须这样做
GenderContract c1 = (GenderContract)'M';
GenderContract c2 = (GenderContract)'F';
GenderContract c3 = (GenderContract)'U';
Run Code Online (Sandbox Code Playgroud)