Salut,
J'ai créé une Func pour avoir une règle définie à un seul endroit :
Je l'utilise comme ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 internal static Func<RULE, bool> ActiveRULE() { return (r => (!r.END_DATE.HasValue || (r.END_DATE.HasValue && r.END_DATE.Value >= DateTime.Now)) && (!r.DISABLED_DATE.HasValue)); }
Comme la négation de la règle n'est pas très simple, je voudrait pouvoir écrire un truc du style Not maRegle() mais je ne trouve pas la syntaxe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public List<AdditionalRightsModel> GetActiveAdditionalRightRules() { List<AdditionalRightsModel> toReturn = null; using (var _dbContext = new MatisContext(true)) { toReturn = _dbContext.RULE .Where(ActiveRULE()) .Where(r => r.TYPE == (byte?)enRuleTypesByte.AdditionalRight) .OrderByDescending(r => r.CREATION_DATE) .Select(r => r.ToAdditionalRightRulesModel(true)).ToList(); } return toReturn; }
Ne fonctionne bien sur pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part .Where(!ActiveRULE())
Pourriez-vous m'aider ?
Merci
Partager