Obtenir le nom de la valeur d'Enum
Je suis en train de faire une fonction où l'on peut obtenir la Namevalue d'un EnumValue
Par exemple:
Get_Enum_ValueName(DayOfWeek, 0)
...Ce sera le retour de "dimanche".
Mais mon code ne fonctionne pas, il dit que le type n'est pas défini:
Private Function Get_Enum_ValueName(Of T)(ByVal EnumName As T, ByVal EnumValue As Integer) As String
Return DirectCast([Enum].Parse(GetType(EnumName), EnumValue ), EnumName).ToString
End Function
Pourquoi ne pas simplement utiliser
Demandez-vous précisément sur le type DateTime.DayOfWeek propriété ou en général sur tout enum?
dbasnett est sur toute enum
EnumVariable.ToString
?Demandez-vous précisément sur le type DateTime.DayOfWeek propriété ou en général sur tout enum?
dbasnett est sur toute enum
OriginalL'auteur ElektroStudios | 2013-04-16
Vous devez vous connecter pour publier un commentaire.
Donné un
enum
ici sont les choses que vous pouvez faire:
OriginalL'auteur ja72
En C#, ce serait:
ou (aussi):
Pas besoin de jeter de la valeur à
object
etT
. Appelez simplement.ToString()
non,
EnumValue
est typé commeint
- que vais vous donner"0"
OriginalL'auteur Marc Gravell
aussi simple que ça... à moins que je suis un malentendu quelque chose?
Et si vous n'avez que le nombre:
Mise à JOUR
OK, la prochaine fois, vous devez mentionner que vous voulez quelque chose de générique.. à utiliser pour toutes les énumérations et pas seulement que des exemples spécifiques. Vous pouvez essayer ceci:
Utiliser comme ceci:
ou:
Je ne pense pas que c'est vraiment nécessaire, mais, parce que vous avez encore besoin de connaître le type d'enum de toute façon... donc:
Ce:
string name = ((WeekDay)someEnumValue).ToString();
et ce
string name = someEnumValue.ToEnumName<WeekDay>();
sont équivalentes... mais.. qui vous convient.
voir ma mise à jour. Je comprends mieux maintenant que je me rends compte que vous voulez quelque chose à travailler avec TOUS les énumérations. Avoir du plaisir.
Est mentionné "ToEnumName<T>()" une méthode d'extension? Je ne le trouve pas.
OriginalL'auteur Matt