How can I cast int to enum?

后端 未结 30 1955
礼貌的吻别
礼貌的吻别 2020-11-22 00:56

How can an int be cast to an enum in C#?

30条回答
  •  野的像风
    2020-11-22 01:22

    This is an flags enumeration aware safe convert method:

    public static bool TryConvertToEnum(this int instance, out T result)
      where T: Enum
    {
      var enumType = typeof (T);
      var success = Enum.IsDefined(enumType, instance);
      if (success)
      {
        result = (T)Enum.ToObject(enumType, instance);
      }
      else
      {
        result = default(T);
      }
      return success;
    }
    

提交回复
热议问题