Avatar billede yezper Nybegynder
07. oktober 2009 - 14:41 Der er 1 løsning

[VB.NET] GlobalResources - i18n

Hej alle,

Jeg arbejder pt. med i18n, og det går sådan set meget godt. Dog løber jeg ind i et problem, når jeg vil hive data ud fra en MySQL database, som herefter skal internationaliseres.

Problembeskrivelse:
Jeg har en brugerdatabase, som inkluderer feltet gender. Værdien af dette felt kan enten være "MALE" eller "FEMALE".

Min resourcefile hedder gender[.culture].resx, og indeholder MALE og FEMALE med tilhørende oversættelse.

Ovenstående er let nok at løse med en Select Case:

Select Case objReader("gender").ToString.ToUpper
  Case "MALE" : lblGender.Text = Resources.genders.MALE
  Case "FEMALE" : lblGender.Text = Resources.genders.FEMALE
  Case Else : lblGender.Text = Resources.genders.NOT_SUPPLIED
End Select

Problemet opstår, når jeg kommer til at skulle internationalisere et databasefelt, som indeholder et væsentligt antal forskellige valgmuligheder. Her ville jeg gerne kunne gøre noget á la det følgende:

objReader = objCmd.ExecuteReader()
If objReader.HasRows
  Do While objReader.Read
    lblGender.Text = Resources.genders(objReader("gender"))
  Loop
End If
objReader.Close

Altså dynamisk at hive ressourcen ud, alt efter hvad objReader("gender") siger på et givent tidspunkt - men ovenstående virker naturligvis ikke.

Er der nogen, som kan hjælpe med en løsning?
Avatar billede yezper Nybegynder
07. november 2009 - 18:27 #1
Spørgsmålet lukkes pga. manglende svar - og jeg har endnu ikke fundet en løsning, som jeg kan skrive ind her.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester