Пример #1
0
        public IEnumerable <ValidationResult> Validate(ValidationContext validationContext)
        {
            // On récupère le DbContext
            BoVoyageContext ctx = (BoVoyageContext)validationContext.GetService(typeof(BoVoyageContext));
            // On récupère le voyage à valider
            Voyage voyage = validationContext.ObjectInstance as Voyage;

            // On fait les contrôles
            // NB/ On utilise pas la vue locale, car le DbSet est instancié à chaque appel du contrôleur et donc pas chargé quand on arrive sur la vue de création d'un aliment

            if (voyage.DateDepart >= voyage.DateRetour)
            {
                yield return(new ValidationResult("La date de départ doit être inférieure à la date de retour", new string[] { "DateDepart", "DateRetour" }));
            }
        }
Пример #2
0
        public IEnumerable <ValidationResult> Validate(ValidationContext validationContext)
        {
            // On récupère le DbContext
            BoVoyageContext ctx = (BoVoyageContext)validationContext.GetService(typeof(BoVoyageContext));
            // On récupère l'aliment à valider
            Destination destination = validationContext.ObjectInstance as Destination;

            // On fait les contrôles
            // NB/ On utilise pas la vue locale, car le DbSet est instancié à chaque appel du contrôleur et donc pas chargé quand on arrive sur la vue de création d'un aliment

            var res = ctx.Destination.Find(destination.Id);

            if (res != null)
            {
                yield return(new ValidationResult("L'Id de Destination éxiste déjà", new string[] { "Id" }));
            }

            res = ctx.Destination.FirstOrDefault(d => d.Nom == destination.Nom);
            if (res != null)
            {
                yield return(new ValidationResult("Ce nom de Destination éxiste déjà", new string[] { "Nom" }));
            }
        }