diff --git a/dotnet/src/webdriver/DevTools/Json/JsonEnumMemberConverter.cs b/dotnet/src/webdriver/DevTools/Json/JsonEnumMemberConverter.cs index 52386c94edc5f..7d109f5801466 100644 --- a/dotnet/src/webdriver/DevTools/Json/JsonEnumMemberConverter.cs +++ b/dotnet/src/webdriver/DevTools/Json/JsonEnumMemberConverter.cs @@ -26,7 +26,8 @@ namespace OpenQA.Selenium.DevTools.Json { - internal class JsonEnumMemberConverter : JsonConverter where TEnum : Enum + internal sealed class JsonEnumMemberConverter : JsonConverter + where TEnum : struct, Enum { private readonly Dictionary _enumToString = new Dictionary(); private readonly Dictionary _stringToEnum = new Dictionary(); @@ -34,11 +35,14 @@ internal class JsonEnumMemberConverter : JsonConverter where TEnum public JsonEnumMemberConverter() { var type = typeof(TEnum); - var values = Enum.GetValues(type); - +#if NET8_0_OR_GREATER + TEnum[] values = Enum.GetValues(); +#else + Array values = Enum.GetValues(type); +#endif foreach (var value in values) { - var enumMember = type.GetMember(value.ToString())[0]; + var enumMember = type.GetField(value.ToString()); var attr = enumMember.GetCustomAttributes(typeof(EnumMemberAttribute), false) .Cast() .FirstOrDefault();