我可以将 HashSet<SomeEnumeration> 作为 HashSet<byte> 传递吗?

Can I pass a HashSet<SomeEnumeration> as HashSet<byte>?

我编写了一个带有 HashSet<byte> 参数的函数。我想传递 HashSet<SomeEnumeration>,其中 SomeEnumeration 具有基础类型 byte。有没有简单的方法可以做到这一点?

public enum SomeEnumeration : byte
{
    ZERO = 0,
    ONE,
    TWO,
    THREE
}

public void someFunc( HashSet<byte> aSet )
{
    ...
}

static void Main()
{
    HashSet<SomeEnumeration> mySet = new HashSet<SomeEnumeration>();

    ...
    someFunc(mySet);
}

是的,您可以使用 Cast 扩展方法来做到这一点:

someFunc(new HashSet<byte>(mySet.Cast<byte>()));