Bonjour à tous,
J'ai un code qui fonctionne, mais j'essaye de le rendre plus générique.
Aujourd'hui, MVVM oblige, j'ai une interface pour chaque classe modèle.
J'aimerais les mutualiser, j'ai donc fait un début de truc comme ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 /// <summary>Interface de définition des méthodes d'accès, de création et d'édition des éléments ad hoc.</summary> public interface IDataAccessServiceGroups { /// <summary>Méthode abstraite, Signature de la méthode GetAll().</summary> tblGridGroups GetAll(int page=0, tblGroup filter = null, string ordre = "lib"); tblGroup Add(tblGroup u); tblGroup Upd(tblGroup u); bool Del(tblGroup u); }
Seulement, il n'aime pas mon T filter=null, il dit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public interface IDataAccessServiceGroups<G, T> { /// <summary>Méthode abstraite. Signature de GetAll().</summary> G GetAll(int page, T filter=null, string ordre = "lib"); T Add(T u); T Upd(T u); bool Del(T u); }
"Impossible d'utiliser une valeur de type '<Null>' comme paramètre par défaut, car il n'existe pas de conversion standard en type 'T'"
J'ai cherché et je ne trouve pas comment le mettre en nullable.
Avez vous une idée ?
Merci d'avance.
Partager