在C#中将两个枚举的组合映射到第三个枚举的最佳方法是什么?
基本上我需要一个带有静态方法的类,它可以接受EnumerationA和EnumerationB,并且在该方法或类中有一个静态映射,用于枚举应为X,Y组合返回的内容。
有没有人有任何好的例子?
答案 0 :(得分:1)
你的问题真的不清楚,但这里有一些猜测你想要的东西。
public enum A { X, ... }
public enum B { Y, Z, ... }
public enum C { Cat, Dog, ... }
private static readonly Dictionary<Tuple<A, B>, C> lookup =
new Dictionary<Tuple<A, B>, C>
{
{ Tuple.Create(A.X, B.Y), C.Cat },
{ Tuple.Create(A.X, B.Z), C.Dog },
...etc...
};
public static C Lookup(A a, B b)
{
return lookup[Tuple.Create(a, b)];
}
答案 1 :(得分:0)
不是Enumerable.Concat你想要什么?
该文档包含C#示例(以及其他示例)。