Jak przeanalizować ciąg znaków w VB.NET, aby wyliczyć wartość?Parsować ciąg znaków do wartości wyliczeniowej w VB.NET
przykład mam ten ENUM:
Public Enum Gender
NotDefined
Male
Female
End Enum
jaki sposób można przekonwertować ciąg "męski" do Gender
ENUM w Male
wartości?
co, jeśli nie znam typu i chciałbym ogólnie przekonwertować. w tym przykładzie podano "Male". Zapisałem wartość wyliczenia w bazie danych i próbuję ją odzyskać. w tym przypadku mogę nie znać rzeczywistej wartości, którą zapisałem, ponieważ dokonuję konwersji naString – Smith
Powinieneś zapisać powiązany typ Enum z wartością, powiedz "Namespaces.EnumName". Po użyciu odbicia można uzyskać obiekt Type według nazwy: Dim t = Type.GetType ("Namespaces.EnumName") i przekazać "t" zamiast "GetType (Gender)". Musisz również rzucić wartość wyniku. Aby to zrobić, musisz znać specyficzny typ wyliczenia podczas pisania kodu. – Kamarey
W .NET 4.0 składnia jest po prostu: 'Parse (enumType As System.Type, value As String) As Object' – motto