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
Quando usare variabili globali e non oggetti Session?
giovedì 22 novembre 2007 - 09.03
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
paquito_ita
Profilo
| Senior Member
224
messaggi | Data Invio:
gio 22 nov 2007 - 09:03
Ciao,
sto realizzando un sito web e almomento mi devo occupare della gestione della sessione utente. Il sito (dedicato) viene acceduto da PDA e contiene contenuti informativi (dettagli di progetti di cui si è membri specifiche, eventi futuri, ecc.). L'utente può non solo furire di tali contenuti, ma anche creare nuovi documenti, eventi o assegnare compiti.
Durante lo sviluppo al fine di limitare il più possibile il n° di query al DB per desumere il contenuto informativo (che varia da utente a utente in base ai progetti di cui è membro)uso degli oggetti Session come flag. Ovvero dopo che eseguo la prima volta una determinata query per desumere determinati documenti, setto a true una certa variabile che definisco Session. In tal modo se l'utente torna alla stessa pagina, il contenuto informativo (presente in un placeholder) può essere semplicemente caricato senza dover eseguire nuovamente la query.
In tal caso sarebbe più corretto usare una variabile globale? Ora che ci penso potrei forse semplicemente controllare il numero dei control contenuti nel placeholder, se == 0 significa che è la prima volta che lo eseguo, altrimenti è già stato riempito una volta (ogni placeholder viene usato univocamente in una pagina). Può essere una soluzione accettabile?
Da qui la domanda: quando è bene usare variabili globali e quando oggetti Session? Uso un oggetto Session per memorizzare l'ID dell'utente desunto al momento del controllo login, in tal caso mi sebre giusto, no?
Altro quesito: ho definito nella cartella "App_code" di VS 2005 delle classi utility (ad esempio creano la connessione al db ed eseguono la query) come SINGLETON, in quanto non ha senso avere più istanze di tali classi. Tuttavia più utenti potrebbero accedere al sito e usare tali classi/istanze contemporaneamente. DA qui sorge la necessità di sincronizzare gli accessi. Venendo da Java so che tramite costrutty synchronize lo si puo' fare, ma come renderlo in C#?
Mi poreste dare info a riguardo o rimandare a qualche tutorial non troppo evasivo?
Grazie mille!
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 !