Désolé pour le titre, je deviens chèvre.
Habitué au SQL, j'aime utiliser l'opérateur "x between y and z".
J'ai donc développé la méthode d'extension suivante :
Code csharp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public static bool IsBetween<T>(this T item, T start, T end) { return Comparer<T>.Default.Compare(item, start) >= 0 && Comparer<T>.Default.Compare(item, end) <= 0; }
C'est magique, maintenant je peux faire des int.IsBetween(int, int) et des long.IsBetween(long, long)
Mais pas des short.IsBetween(short, short) !
Voici ce qu'il me sort :
Pourtant, si je passe la souris sur mla ligne en question, voici ce que j'ai comme aide contextuelle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Erreur CS1929 'short' ne contient pas de définition pour 'IsBetween' et la meilleure surcharge de méthode d'extension 'Extensions.IsBetween<int>(int, int, int)' nécessite un récepteur de type 'int' CRMStationsManager E:\CRMStationsManager\CRMStationsManager\CRMStationCollection.cs 65 Actif
C'est encore mon Visual Studio qui déconne ou quoi ?
Partager