枚举标志包装在C#中

时间:2014-12-17 14:26:39

标签: c# generics enums

我正在为几个支持[Flags]属性的枚举集合重构一些代码。

我试图提出一个允许常用方法的泛型类(添加,删除和检查集合中存在的枚举等)。

我从这段代码开始:

public class EnumFlags<T>
{
    protected T collection;

    public void Add(T value)
    {
        this.collection = this.collection | value;
    }
}

但是,我不能使用|类型为T的运算符。我不能将T的约束添加为枚举(不允许where T : Enum)。

有任何解决这个问题的想法吗?

0 个答案:

没有答案