Introduction
This article describes how to set-up an ASP.NET project in order to use MySQL as its session state store provider.
Using the code
Looking on the web, I was not able to find a suitable solution that uses MySQL as its session state store. It may certainly be possible that there is already a better solution available (if so, please do not hesitate to contact me). However, I was able to find a sample session state store provider using MS Access. That's it! Port it to MySQL... and that's what I did.
But, let's do it step by step. The list below gives you an idea of what I did in order to get it to work:
- Downloaded the sample session state store provider for MS Access from MSDN.
- Downloaded the .NET Connector (using version 5.0.7) from MySQL.
- Ported the sample code provided by Microsoft for use with MySQL (the zipped source code can be found here).
- Adjusted the Web.config accordingly:
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<connectionStrings>
<add name="MySqlSessionServices"
connectionString="Database=<name of database>;
Data Source=<host>; User Id=<login>; Password=<password>"/>
</connectionStrings>
<system.web>
<sessionState cookieless="false" regenerateExpiredSessionId="true"
mode="Custom" customProvider="MySqlSessionProvider">
<providers>
<add name="MySqlSessionProvider"
type="Samples.AspNet.Session.MySqlSessionStateStore"
connectionStringName="MySqlSessionServices"
writeExceptionsToEventLog="false"/>
</providers>
</sessionState>
</system.web>
</configuration>
You can check it out at www.kimpel.com ... it works like a charm.
Please do not hesitate to contact me if you have any questions and/or comments.
History
- 2007-09-20: Initial version.
- 2007-10-17: Updated link to sources.