Bonjour tout le monde,

J'ai une table dans ma base de données qui recense les langues que mon appli peut utiliser et une page où je peux ajouter de nouvelles langues.

Dans la fonction d'insert d'une nouvelle langue je veux parcourir toutes les langues présentes dans ma base et enregistrer la traduction pour cette langue de celle que j'ajoute. Le problème c'est que j'ai toujours la traduction en Français et jamais dans la langue en cours dans l'itération

Je ne sais pas si c'est très clair mais je ne vois pas comment le dire d'autre

Sans plus attendre, mon code :

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
16
17
18
19
20
21
22
23
24
25
 
                Dim langues As DataSet = Languages.GetAllInDataBaseDS(Me.Master.Connection)
                Dim label As New Libelle(Me.Master.Connection)
                Dim ci As CultureInfo
                Dim lang As New Language(Me.Master.Connection)
                Dim originalCulture As CultureInfo
                originalCulture = Threading.Thread.CurrentThread.CurrentCulture
                For Each dr As DataRow In langues.Tables(0).Rows
                    lang.GetLanguage(CInt(dr("IDX_LANGUE")))
                    ci = New CultureInfo(lang.Culture)
                    'If ci.IsNeutralCulture Then
                    '    ci = CultureInfo.GetCultureInfo(ci.TextInfo.CultureName.Substring(ci.TextInfo.CultureName.Length - 2))
                    'End If
                    Threading.Thread.CurrentThread.CurrentCulture = ci
                    label.IdLangue = ci.TextInfo.LCID
                    label.Nom = CurrentLanguage.Code
                    ci = CultureInfo.GetCultureInfo(CurrentLanguage.Code)
                    label.Traduction = ci.DisplayName
                    If Libelle.Exists(Me.Master.Connection, dr("STR_CODE").ToString, CInt(dr("IDX_LANGUE"))) Then
                        label.Update()
                    Else
                        label.Insert()
                    End If
                Next
                Threading.Thread.CurrentThread.CurrentCulture = originalCulture
Libelle et Language sont des classes de mon appli pour manipuler respectivement les traduction de mon appli selon la langue du user elle même définie par Language, et la variable CurrentLanguage est la nouvelle langue que je suis en train d'ajouter...

Merci de votre aide