ToEnum<TEnumType>(Boolean)

Converts the object representation to its corresponding enumeration.

Declaration
public static TEnumType ToEnum<TEnumType>(this object value, bool safe = true)
Example
private enum Level
{
    Low = 0,
    Medium = 15,
    High = 30,
}

object validObjectInt = 30;
object invalidObjectInt = 123;
object validObjectString = "Medium";
object validObjectStringInt = "30";
object invalidObjectString = "Friend";
object validObjectDouble = 15d;
object invalidObjectDouble = 123.456d;
object nullObject = null;

validObjectInt.ToEnum<Level>(true);
validObjectInt.ToEnum<Level>(false);

invalidObjectInt.ToEnum<Level>(true);
invalidObjectInt.ToEnum<Level>(false);

validObjectString.ToEnum<Level>(true);
validObjectString.ToEnum<Level>(false);

validObjectStringInt.ToEnum<Level>(true);
validObjectStringInt.ToEnum<Level>(false);

invalidObjectString.ToEnum<Level>(true);
invalidObjectString.ToEnum<Level>(false);

validObjectDouble.ToEnum<Level>(true);
validObjectDouble.ToEnum<Level>(false);

invalidObjectDouble.ToEnum<Level>(true);
invalidObjectDouble.ToEnum<Level>(false);

nullObject.ToEnum<Level>(true);
nullObject.ToEnum<Level>(false);
Result
Level.High
Level.High

Level.Low
Level.Low

Level.Medium
Level.Medium

Level.High
Level.High

Level.Low
ArgumentException

Level.Medium
Level.Medium

Level.Low
ArgumentException

Level.Low
ArgumentException

Last updated