Bonjour à tous.

Dans un formulaire j'ai fais un Validator Custom pour gérer la cohérence d'une date de naissance

Voici le code de la procédure :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 Protected Sub cvDateNaissance_ServerValidate(ByVal source As Object, ByVal args As System.Web.UI.WebControls.ServerValidateEventArgs) Handles cvDateNaissance.ServerValidate
        Dim frFR As New CultureInfo("fr-FR")
        Dim testdate As DateTime
 
        If DateTime.TryParseExact(args.Value, "dd/mm/yyyy", frFR, DateTimeStyles.None, testdate) Then
 
            If GetAge(args.Value) < 18 Or GetAge(args.Value) > 99 Then
                args.IsValid = False
            Else
                args.IsValid = True
            End If
        Else
            args.IsValid = False
        End If
    End Sub
L'idée est de vérifier que c'est bien une date de quelqu'un qui est agé de plus de 18 ans et de moins de 100 ans.

Maintenant le souci : mon système est installé en anglais et mon serveur SQL en Français. Ne me demandez pas pourquoi c'est comme ça et ce n'est plus modifiable (sauf emmerdement ultime façon Murphy, donc ....).

Du coup, si je saisi 27/07/1978 il me jette au niveau du contrôle avec un message du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Conversion from string "27/07/1978" to type 'Date' is not valid.
Mais ce que je comprends pas c'est que je lui ai dit que la culture était en France. Pourquoi il veut pas le prendre en compte ?

Merci pour votre aide.