How do I determine if an Enum value has one or more of the values it's being compared with?

后端 未结 8 1582
死守一世寂寞
死守一世寂寞 2021-01-04 07:53

I\'ve got an Enum marked with the [Flags] attribute as follows:

[Flags]
public enum Tag : int
{
    None = 0,
    PrimaryNav = 1,
    HideChildPages = 2,
            


        
8条回答
  •  温柔的废话
    2021-01-04 08:22

    That's a classic Extension method:

        public static bool HasFlag(this Enum val, Enum t)
        {
                return (Convert.ToUInt64(val) & Convert.ToUInt64(t)) != 0;
        }
    

提交回复
热议问题