Nello sviluppo di applicazioni NET complesse è necessario integrare la maggior parte dei provider messi a disposizione da Asp.NET. Uno dei più utili è sicuramente il SessionProvider che non fa altro che salvare la sessione corrente in una tabella del database e recuperarla in caso venga persa a causa di un riavvio della applicazione; questo succede sopratutto in concomitanza con un cambio della struttura della root dell’applicazione stessa (esempio la cancellazione di una directory, non di un file).
Sviluppare un SessionProvider non è facile e, se si utilizza SQL Server il tutto si traduce nell’attivare il provider di default. Se stiamo lavorando su un server con MySQL invece si rende necessario svilupparlo da zero ed integrarlo manualmente.

Fortunatamente ci viene in aiuto un volenteroso programmatore che ha convertito in MySQL il provider che Microsoft utilizza per Access.
Il progetto lo trovare su SourceForge qui
Consigliamo di scaricare il file .cs, il file .sql (contenente la tabella utilizzata dal provider) e il file howto (per capire come inserirlo nel web.config).
L’inclusione non ha dato nessun problema e al primo colpo a funzionato a dovere; bisogna prestare molta attenzione alla realizzazione della tabella “sessions” in MySQL come descritto nel file allegato; per la cronaca nel file utilizza solo “SessionId” come Primary Key ma si consiglia di usare anche “ApplicationName”.

Inoltre riportiamo i link originali di casa Microsoft nel quale si spiega come creare un SessionProvider:
Sample Session-State Store Provider
Implementing Session-State Store Provider
How to: Session State Store Provider

There are currently no comments.