2010-05-08 15 views
6

Sto implementando un sito Web multilingue utilizzando ASP.Net. Le lingue sono inglese, francese e arabo. Si prega di notare che la direzione dell'arabo è RTL. Qual è il modo migliore per implementare il supporto multilingue. Sto pensando di utilizzare la funzione di localizzazione .Net ma i testi del sito Web sono memorizzati nel DB. Per i controlli (controlli del modulo), posso usare il file resx. Devo creare due pagine diverse (una per LTR e un'altra per RTL)? O posso avere un file ASPx per tutte e tre le lingue?Implementazione di un sito Web multilingue tramite ASP.Net

Mi piacerebbe sentire alcune best practice nell'implementazione di questo tipo di applicazioni web.

Grazie in anticipo,
Abdel Olakara

risposta

3

Prima emissione del multilingue: semplicemente fare una classe basepage che ereditata dalla classe pagina, mettere questo metodo nella classe basepage ed ereditare classe basepage in ogni tuo aspx .cs pagina per raggiungere la globalizzazione.

protected override void InitializeCulture() 
{ 
    Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US"); //'en-US' these values are may be in your session and you can use those 
    Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");//'en-US' these values are may be in your session and you can use those 
    base.InitializeCulture(); 
} 

secondo numero di RTL e LTR: nella tua masterpage c'è div principale come ..

<div runat="Server" id="divPageDirection"> 
</div> 

è necessario cambiato la direzione e mettere questo nella tua pagina carico

divPageDirection.Attributes.Add("dir", "rtl");//rtl or ltr you will decide on which language is in your current session 

per favore fatemi sapere se avete qualche problema ...

+1

Probabilmente andrei a caricare un foglio di stile diverso per l'arabo. Potrebbero esserci vari altri elementi di layout che è necessario perfezionare. – Thorarin

+0

@Thorarin ... sì, hai ragione .. ho bisogno di caricare un altro file CSS ... –

+0

Sono d'accordo con questa risposta .. ma il mio problema è .. dove posso archiviare i testi arabo, francese e inglese? Voglio dire, qual è il metodo migliore? –