SQLServer
با در نظر گرفتن مقدار فوق برای خصلت mode ، از یک بانک اطلاعاتی SQL Server برای ذخیره اطلاعات session استفاده می گردد . بانک اطلاعاتی مورد نظر توسط خصلت sqlConnectionString مشخص می گردد . روش فوق متداولترین مکانیزم برای ذخیره state در برنامه های وب می باشد ولی در مقایسه با روش های دیگر از سرعت کمتری برخوردار است .
برای استفاده از روش فوق می بایست از یک سرویس دهنده SQL استفاده شود . مقدار خصلت sqlConnectionString ، همانند الگوی استفاده شده جهت دستیابی به داده توسط ADO. NET است و شامل مشخص کردن یک منبع داده ( آدرس سرویس دهنده ) ، یک رمزعبور و شناسه کاربر ( مگر این که از integrated security استفاده شده باشد ) است . علاوه بر این ، می بایست stored procedures و session موقت بانک اطلاعاتی نصب گردند . stored procedures مسئولیت ذخیره و بازیابی اطلاعات session را برعهده دارند .
ASP.NET شامل یک اسکریپت Transact-SQL برای این هدف خاص با نام InstallSqlState.sql است که در
مسیر [ C:\[WinDir]\Microsoft.NET\Framework\[Version قرار دارد . برای اجرای اسکریپت فوق می توان از یک برنامه کاربردی SQL Server نظیر SQL Server Management Studio یا sqlcmd.exe ( برای سرویس SQL 2005 ) و یا OSQL.exe و Query Analyze ( برای نسخه های قبلی ) استفاده کرد . اسکریپت فوق صرفا” یک مرتبه و به منظور ایجاد بانک ، جداول و stored procedures مورد نیاز اجراء خواهد شد .
نام بانک اطلاعاتی معمولا” ASPState می باشد .در واقع ، connection string موجود در فایل web.config با صراحت نام بانک اطلاعاتی را مشخص نخواهد کرد بلکه صرفا” مکان سرویس دهنده و نوع تائیدیه مشخص می گردد . کد زیر نحوه انجام این کار را نشان می دهد .
در صورتی که قصد استفاده از یک بانک اطلاعاتی با نام دیگر و ساختار مشابه را داشته باشیم ، کافی است مقدار خصلت CustomSqlDatabase برابر با true در نظر گرفته شود .
زمانی که از یک بانک اطلاعاتی SQL Server برای ذخیره اطلاعات session استفاده می گردد ، می توان از گزینه اختیاری sqlCommandTimeout است کرد . پارامتر فوق ، حداکثر مدت زمان انتظار برای پاسخ سرویس دهنده بر حسب ثانیه را مشخص می نماید . مقدار گزینه پیش فرض ، ۳۰ ثانیه است .