J'ai une fonction avec type de retour générique. Si le paramètre value est une valeur enum valide, la méthode renvoie la valeur enum associée.Paramètres de type générique, Enum Return générique Type
Comment puis-je retourner la valeur enum associée? Erreur de compilation: Impossible de convertir le type 'int?' 'T'
public static T? GetEnumValue<T>(int? value)
{
if (value == null)
{
return null;
}
try
{
var enumValues = Enum.GetValues(typeof(T));
foreach (object enumValue in enumValues)
{
if (Convert.ToInt32(enumValue).Equals(value))
{
// ERROR: Cannot convert type 'int?' to 'T'
return (T)value;
}
}
}
catch (ArgumentNullException)
{
}
catch (ArgumentException)
{
}
catch
{
}
return null;
}
Merci,