Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
CultureInfo
mercoledì 26 luglio 2006 - 15.32
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Ciciu
Profilo
| Senior Member
233
messaggi | Data Invio:
mer 26 lug 2006 - 15:32
Ciao a tutti.
Ho incluso, nel mio sito, la possibilità per l'utente di selezionare la lingua con cui visualizzarlo.
Non mi è però chiara una cosa....
Nel pre_init della pagina Default, creo un nuovo oggetto CUltureInfo, e lo assegno a System.Threading.Thread.CurrentThread.CurrentUICulture.
Il mio dubbio però è : il CurrentThread è la mia applicazione, oppure rappresenta solo la pagina corrente ? Ovvero : devo assegnare la Culture (dinamica) su tutte le pagine, oppure ho qualche meccanismo perimpostarla una volta (magari nel momento in cui l'utente decide di cambiarla) e basta ?
Ciao - Grazie
Fabio G
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 27 lug 2006 - 09:01
>Il mio dubbio però è : il CurrentThread è la mia applicazione,
>oppure rappresenta solo la pagina corrente ? Ovvero : devo assegnare
>la Culture (dinamica) su tutte le pagine, oppure ho qualche meccanismo
>perimpostarla una volta (magari nel momento in cui l'utente decide
>di cambiarla) e basta ?
Ho avuto un problema del genere anche io e tuttora non mi è completamente chiaro. Io ho fatto così quando uno clicca sulla bandiera gli sparo un Cookie con la lingua prescelta, ad ogni pagina nell'InitializeCulture eseguo il codice che hai riportato per cambiare la lingua del Thread corrente. La culture puoi impostarla via codice sul Web.Config, cioè la lingua di default. Però se deve cambiare credo che devi reapplicarla nel modo che hai detto ogni volta.
Ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
Ciciu
Profilo
| Senior Member
233
messaggi | Data Invio:
gio 27 lug 2006 - 11:41
Diciamo che io ho suddiviso il problema in due parti.
Gli utenti non loggati, si ciucciano il cookie (temporaneo per la sessione), mentre per quelli loggati, vado ad aggiornare una sezione del profile, che quindi resta permanente.
Volevo però centralizzare il discorso della Culture e quello dei themes. I Themes vanno impostati (dinamicamente) nel page_preinit di ogni pagina. Teoricamente la culture andrebbe, come hai detto giustamente nell'InitializeCulture di ogni pagina.
Io mi sono creato un metodo statico di una classe statica, StartPage, che imposta entrambe le cose, e lo richiamo nel Page_PreInit. Sembra che la cosa gli piaccia anche per la Culture. Del resto, immagino che si limiti a fare il lavoro due volte per pagina, impostando nuovamente la Culture che voglio nel PreInit.
Speravo che ci fosse qualcosa che mi permettesse di cambiare la Culture a livello di sessione, per centralizzare definitivamente il tutto.
Il problema (grosso) è che sto gettando le basi per costruire siti nel modo più semplice possibile, considerando che ho dei colleghi che ne sanno molto meno di me (e questo Te la dovrebbe di re lunga). Personalmente sono molto esaltato da questo ambiente di sviluppo, ma quello che vedo è che i miei colleghi hanno enormi problemi con l'utilizzo delle classi e degli eventi, per cui più è semplice, meglio è (a Settembre comunicherò loro che abbandoneremo lo sviluppo di applicazioni con accesso ai dati via Wizard, in favore di qualche ORM - e li ci sarà da ridere/piangere).
Adesso la smetto di tediarTi con queste cose. Passo e chiudo. Parto. Vado in Perù.
Grazie per l'aiuto, ci risentiamo a Settembre.
Buone Ferie anche a Te !
Ciao
FabioG
Fabio G
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
ven 28 lug 2006 - 08:41
>impostando nuovamente la Culture che voglio nel PreInit.
>Speravo che ci fosse qualcosa che mi permettesse di cambiare
>la Culture a livello di sessione, per centralizzare definitivamente
>il tutto.
Non so se funziona il cambi odi Culture nel PreInit, ricordo che ho perso molto tempo provandole tutte, poi mi hanno detto anche a me che bisognava metterla nella InitCulture.
>più è semplice, meglio è (a Settembre comunicherò loro che abbandoneremo
>lo sviluppo di applicazioni con accesso ai dati via Wizard, in
>favore di qualche ORM - e li ci sarà da ridere/piangere).
Non pensare, ci si trova molto bene con gli ORM e non sono poi così complessi come sembra. A volte forse un po' rigidi.
ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !