J'ai une méthode d'extension ToString d'un IEnumerable, qui le convertit en une liste de chaînes comme suit:tableau Enum à cordes
public static string ToString<T>(this IEnumerable<T> theSource,
string theSeparator) where T : class
{
string[] array =
theSource.Where(n => n != null).Select(n => n.ToString()).ToArray();
return string.Join(theSeparator, array);
}
Je veux maintenant faire quelque chose de similaire avec un tableau de énumérations: theXStatuses données , un tableau de valeurs d'énumération XStatus, je veux obtenir une chaîne contenant les valeurs enum séparées par theSeparator. Pour une raison quelconque, la méthode d'extension ci-dessus ne fonctionne pas pour XStatus []. J'ai donc essayé
public static string ToString1<T>(this IEnumerable<T> theSource,string theSeparator)
where T : Enum
Mais je suis une erreur « ne peut pas utiliser ... « System.Enum » ... comme contrainte de paramètre de type.
Est-il possible de ce achive?
.
Ceci est C#, n'est-ce pas? Vous devriez ajouter ce tag à votre question (je le ferais mais je ne suis pas sûr à 100% que c'est du C#). – Pointy