gpt4 book ai didi

c# - 如何在值共享相同名称的枚举之间进行转换?

转载 作者:可可西里 更新时间:2023-11-01 09:07:47 24 4
gpt4 key购买 nike

如果我想在两个 Enum 类型之间进行转换,我希望它们的值具有相同的名称,是否有一种简洁的方法,或者我必须这样做:

enum colours_a { red, blue, green }
enum colours_b { yellow, red, blue, green }

static void Main(string[] args)
{
colours_a a = colours_a.red;
colours_b b;

//b = a;
b = (colours_b)Enum.Parse(typeof(colours_b), a.ToString());
}

?

最佳答案

如果您对这两个枚举有严格的控制,那么您的解决方案(或 Randolpho's)就可以了。

如果您不这样做,那么我会跳过尝试变得棘手并创建一个在它们之间进行转换的静态映射类。事实上,从易于维护的角度来看,无论如何我可能会推荐(即使您现在按名称映射)。

关于c# - 如何在值共享相同名称的枚举之间进行转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2692331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com