Salut,

J'ai créé une Func pour avoir une règle définie à un seul endroit :

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));
        }
Je l'utilise comme ça

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;
        }
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.

Ne fonctionne bien sur pas

Pourriez-vous m'aider ?

Merci