Comment analyser une chaîne dans VB.NET pour enumérer la valeur?
Exemple j'ai cette énumération:
Public Enum Gender
NotDefined
Male
Female
End Enum
comment puis-je convertir une chaîne "Homme" en valeur Gender
de l'énumération Male
?
Dim val = DirectCast([Enum].Parse(GetType(Gender), "Male"), Gender)
Voir Enum.TryParse .
comment puis-je convertir une chaîne "Male" en valeur Male de l'énumération Gender?
La solution acceptée renvoie un objet Enum. Pour renvoyer la valeur que vous souhaitez pour cette solution:
dim MyGender as string = "Male"
dim Value as integer
Value = DirectCast([Enum].Parse(GetType(Gender), MyGender), Integer)
Peut aussi le faire de cette façon:
value = cInt([enum].Parse(GetType(Gender), MyGender))
Si vous souhaitez que l'analyse ne respecte pas la casse, vous pouvez utiliser les éléments suivants:
[Enum].Parse(Gender, DirectCast(MyGender, String), True)
Ceci gérera dim MyGender as string = "Male"
ou dim MyGender as string = "male"