مقدمه و معرفی کنترل SqlDataSource
معرفی کنترل SqlDataSource :
کنترل SqlDataSource يکی از کنترل های سرور داده پرکاربرد در ASP.NET است ، که به شما
امکان اتصال به انواع مختلفی از منابع داده ای همچون پايگاه داده SQL Server ، Access
، Oracle و يا منابع داده ای OLE DB يا ODBC را می دهد .
کنترل SqlDataSource ، همانند ساير کنترل های سرور داده خود قادر به نمايش و يا ويرايش
اطلاعات منابع داده ای نيست و برای اين منظور بايستی اين کنترل را به همراه يک کنترل
وب ديگر که قادر به نمايش و ويرايش اطلاعات منابع داده ای است مثل کنترل های FormView
و يا GridView استفاده کرد . به عبارت ديگر اين کنترل همانند يک پل يا رابط بين منبع
داده و کنترل وب نمايش دهنده اطلاعات عمل کرده و اطلاعات درخواست شده را از منبع داده
دريافت کرده و به کنترل وب منتقل می سازد . همچنين در صورت نياز اطلاعات اصلاحی و ويرايش
شده را از کنترل وب به منبع داده ای ارسال می کند .
همچنين کنترل SqlDataSource به کنترل های وب که با آن استفاده می شوند ، امکانات و
قابلیت های بسياری همچون صفحه بندی( Paging ) ، مرتب سازی اطلاعلات ( Sorting ) ، فيلترينگ
داده ( Filtering ) و ... را اضافه می کند . در واقع کنترل های سرور داده مثل SqlDataSource
اين وظايف را برای کنترل های وب انجام می دهند .
در واقع اتباط بين يک کنترل SqlDataSource و يک کنترل وب مثل GridView به صورا زير
است :
منبع داده ای

کنترل داده SqlDataSource

کنترل وب
نحوه کار کنترل SqlDataSource :
کنترل SqlDataSource ، از کلاس های مختلف ADO.NET برای ارتباط با منابع داده ای که
در اين زبان پشتيبانی می شوند ، استفاده می کند . کلاس های استفاده شده برای اين منظور
در ليست زير آمده اند . نام اين کلاس را در زمان تنظيم کنترل SqlDataSource برای کار
با هر يک از پايگاه های داده مربوط بايد در قسمت ProvideName خاصيت ConectionString
کنترل ، چنانچه که بعده توضيح می دهيم ، قرار داد .
- System.Data.SqlClient : برای ارتباط با پايگاه داده SQL Server
- System.Data.oleDb : برای ارتباط با منبع داده ای OLE DB
- System.Data.odbc : برای ارتباط با منبع داده ای ODBC
- System.Data.OracleClient : برای ارتباط با پايگاه داده Oracle
استفاده از کنترل SqlDataSource، به شما امکان می دهد تا با ترکيب اين کنترل وب به
سادگی و بدون استفاده مستقيم از کلاس های ADO.NET ، داده های مورد نظر خود را بر روی
صفحات وب ASP.NET نمايش داده و ويرايش کنيد .
برای اتصال يک کنترل SqlDataSource به پايگاه داده ، شما بايستی موارد
زير را تنظيم کنيد :
- ConnectionString : رشته ارتباطی يا ConnectionString توسط خاصيت
ConnectionString کنترل تعيين شده و در واقع شامل اطلاعات لازم برای اتصال کنترل
به پايگاه داده است . اين اطلاعات شامل نام و مکان سرور پايگاه داده ، نام جدول بانک
اطلاعاتی مورد نظر و در صورت نياز اطلاعات امنيتی مثل کلمه عبور و رمز جهت اتصال به
پايگاه داده است . نحوه تنظيم اين خاصيت را در بخش بعدی شرح می دهيم .
- SelectCommand : دستور انتخاب توسط خاصيت ُSelectCommand
کنترل تعيين شده و شامل يک دستور SQL از نوع Select است و اطلاعاتی را که بايد از از
جدول بانک اطلاعاتی استخراج شود را تعيين می کند . همچنين مقدار اين خاصيت می تواند
نام يک تابع آماده SQL يا ( ُ Stored Procedure ) نيز باشد ، که در آن دستورات لازم
برای انتخاب اطلاعات مورد نظر تعريف شده است و می تواند برای فراخوانی داده مورد استفاده
قرار بگيرد .
نحوه تنظيم اين خاصيت را در بخش بعدی به طور مفصل شرح می دهيم .
- Provider : تامين کننده يا Provider : که توسط قسمت
Provider در خاصيت Connectionstring کنترل تنظيم می شود ، تعيين کننده کلاس ADO.NET
ای است که کنترل برای اتصال به پايگاه داده از آن استفاده می کند .
در زمان اجرا ، کنترل SqlDataSource با توجه به رشته ارتباطی تعيين شده ( ConnectionString
) برای آن ارتباط با پايگاه داده مورد نظر را باز کرده ، دستورات SQL خاصيت SelectCommand
را اجرا می کند و اطلاعات لازم را از پايگاه داده به کنترل يا کنترل های وب متصل به
خود منتقل می سازد . همچنين در صورتی که اطلاعات اصلاحی يا ويرايش شده نيز وجود داشته
باشد آن را از کنترل وب به پايگاه داده و در نهايت ارتباط را می بندد .