comment tester un type générique T ?
Bonjour,
Cette méthode fonctionne bien sauf quand je rajoute le test "else if (typeof(T) is double?)". Le warning est "The given expression is never of the provided ('double?') type". Quand, en mode debug, j'arrive à un moment où T vaut bien "double?", il considère effectivement mon test comme faux.
Qu'est-ce qui ne va pas et comment effectuer mon test s'il vous plaît?
Merci
Code:
1 2 3 4 5 6 7 8 9 10 11
| internal static T GetValue<T>(this string s)
{
TypeConverter converter = TypeDescriptor.GetConverter(typeof(T));
if (string.Equals("null", s) || string.IsNullOrEmpty(s) || string.IsNullOrWhiteSpace(s) || converter == null)
return default(T);
else if (typeof(T) is double?)
s = s.Replace('.', ',');
return (T)converter.ConvertFrom(s);
} |