using System;
using System.Linq;
public class Test
{
public static void Main()
{
var userRoles = new[] { "Guest", "Admin", "User" };
var highestRole = userRoles
.Select(r => Enum.Parse(typeof(RoleType), r))
.Max();
Console.WriteLine("The type is: " + highestRole.GetType().Name);
Console.WriteLine("The values is: {0}({1})",
(int)highestRole,
highestRole);
}
}
public enum RoleType
{
Default = 10,
Guest = 20,
User = 30,
Admin = 40,
Super = 50
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKIApwdWJsaWMgY2xhc3MgVGVzdAp7CiAgICAgICAgcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQogICAgICAgIHsKCQl2YXIgdXNlclJvbGVzID0gbmV3W10geyAiR3Vlc3QiLCAiQWRtaW4iLCAiVXNlciIgfTsKCgkJdmFyIGhpZ2hlc3RSb2xlID0gdXNlclJvbGVzCgkJCS5TZWxlY3QociA9PiBFbnVtLlBhcnNlKHR5cGVvZihSb2xlVHlwZSksIHIpKQoJCQkuTWF4KCk7CgogCiAgICAgICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZSgiVGhlIHR5cGUgaXM6ICIgKyBoaWdoZXN0Um9sZS5HZXRUeXBlKCkuTmFtZSk7CiAgICAgICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZSgiVGhlIHZhbHVlcyBpczogezB9KHsxfSkiLCAKICAgICAgICAgICAgICAgICAgICAgICAgKGludCloaWdoZXN0Um9sZSwKICAgICAgICAgICAgICAgICAgICAgICAgaGlnaGVzdFJvbGUpOwogICAgICAgIH0KfQogCnB1YmxpYyBlbnVtIFJvbGVUeXBlCnsKICAgIERlZmF1bHQgPSAxMCwKICAgIEd1ZXN0ID0gMjAsCiAgICBVc2VyID0gMzAsCiAgICBBZG1pbiA9IDQwLAogICAgU3VwZXIgPSA1MAp9