دانلود با لینک مستقیم و پر سرعت .
دستیابی داده در ASP.NET 2.0
همه چیز درمورد دستیابی داده در ASP.NET
مقاله ای مفید و کامل
لینک پرداخت و دانلود *پایین مطلب*
فرمت فایل:Word (قابل ویرایش و آماده پرینت)
تعداد صفحه:394
**تخفیف ویژه**نصف قیمت اصلی مقاله**
چکیده :
دستیابی به داده از جمله عملیات مهم در زمان پیاده سازی هر نوع برنامه کامپیوتری است و برنامه های وب نیز از این قاعده مستثنی نمی باشند . امروزه صفحات وبی که در ارتباط با داده بوده و حاوی اطلاعاتی می باشند که از بانک های اطلاعاتی بازیابی و نمایش داده می شود به یکی از ارکان اصلی هر نوع برنامه تجاری تبدیل شده است . پیاده کنندگان برنامه های کامپیوتری خصوصا" برنامه های وب همواره برای پیاده سازی برنامه هائی که در ارتباط با داده می باشند با چالش های خاص خود مواجه بوده و آرزو می نمایند که بتوانند با صرف کمترین زمان و نوشتن حداقل کد لازم به اهداف خود نائل گردند . با ارائه ASP.NET 2.0 ، زمینه تحقق خواسته فوق برای پیاده کنندگان برنامه های وب فراهم می گردد . چراکه در این نسخه از ASP.NET علاوه بر ارائه بیش از پنجاه کنترل جدید ، امکانات متعددی به منظور بهبود و تسهیل عملیات در ارتباط با داده ارائه شده است .
پیاده کنندگان برنامه های وب که از ASP کلاسیک و یا ASP.NET 1.1 برای طراحی و پیاده سازی برنامه های خود استفاده می نمایند ، می بایست پس از نوشتن کد لازم به منظور دستیابی و بازیابی داده از منابع ذخیره سازی ، یک قالب و یا فرمت مناسب جهت نمایش اطلاعات در مرورگر را نیز ایجاد نمایند . با این که ویژوال استودیو دارای برنامه های کمکی خاصی ( ویزارد ) در این رابطه می باشد ، ولی استفاده از ویژگی های پیشرفته ای نظیر Paging و مرتب سازی داده ها ، همچنان مستلزم همگرائی بین کدهای نوشته شده در لایه back-end و اطلاعات مورد نظر جهت نمایش در لایه front-end است . در اغلب موارد نگهداری و یکسان سازی کدهای فوق نیز مشکل می باشد خصوصا" در مواردی که بانک اطلاعاتی تغییر می یابد و یا می بایست اطلاعات اضافه ای را بر روی یک صفحه خاص نمایش دهیم . علاوه بر موارد فوق ، استفاده از فایل های XML به عنوان منابع ذخیره سازی داده نیز مستلزم نوشتن خطوط زیادی است تا بتوان یک همگرائی خاص بین منبع داده و منطق دستیابی داده را ایجاد نمود .
در ASP.NET 2.0 کد مورد نیاز به منظور دستیابی و نمایش داده کاهش و از این طریق کارآئی و بهره وری برنامه های وب بطرز محسوسی افزایش می یابد . در این رابطه ، کنترل های جدیدی ارائه شده است که قدرت کنترل و انعطاف پیاده کنندگان به منظور انجام عملیات در ارتباط با داده را افزایش می دهد. کنترل های داده جدید را می توان به همراه مجموعه وسیعی از منابع داده استفاده نمود ( از بانک های اطلاعاتی سنتی تا منابع داده جدید XML ) . بدین ترتیب تمامی منابع داده یک رفتار همگن را خواهند داشت و به دنبال آن حجم و پیچیدگی برنامه های وب مبتنی بر داده ، کاهش می یابد.
دستیابی داده در برنامه های وب
درفریمورک دات نت ، دستیابی داده با استفاده از ADO.NET انجام می شود . ADO.NET در حقیقت یک رابط و یا اینترفیس برنامه نویسی است که مجموعه امکانات لازم به منظور کار با بانک های اطلاعاتی را در اختیار پیاده کنندگان برنامه های وب قرار می دهد . اینترفیس فوق با ایجاد یک لایه اضافه ، جزئیات و پیچیدگی های موجود به منظور دستیابی به داده را از دید پیاده کنندگان مخفی نگه می دارد .
برنامه های وب نوشته شده با استفاده از ASP.NET 2.0 از پتانسیل های ارائه شده توسط ADO.NET نظیر : ارتباط اتوماتیک با انواع متفاوتی از منابع داده ، ایجاد کنترل های کاربر در ارتباط با داده و سایر موارد دیگر استفاده می نمایند . بدین ترتیب حجم کد مورد نیاز برای نوشتن برنامه های وب مبتنی بر داده کاهش یافته و نگهداری و پشتیبانی از این نوع برنامه ها شرایط مطلوب تری را پیدا خواهد کرد .
معماری دستیابی داده
دستیابی داده در برنامه های وب دات نت براساس یک ساختار و یا معماری دو لایه ای انجام می شود (دو لایه جداگانه ) . اولین لایه ، شامل عناصر ضروری فریمورک به منظور دستیابی به داده است . دومین لایه ، شامل APIs و کنترل هائی است که قابلیت های دستیابی به داده را در اختیار برنامه نویسان قرار می دهد .
دستیابی به داده مستلزم بکارگیری چهار عنصر اساسی زیر است :
- برنامه وب ( ASP.NET )
- لایه داده ( ADO.NET )
- ارائه دهنده داده ( Data Provider )
- منبع داده ( Data Source)
ارتباط بین عناصر فوق، زیرساخت و یا فونداسیون لازم برای تمامی برنامه های وب مبتنی بر داده را ارائه می نماید .
شکل زیر عناصر و معماری دستیابی به داده را نشان می دهد .
ADO.NET ، به منظور ارتباط با منابع داده متفاوت از مجموعه ای کلاس و دستور استفاده می نماید که آنان را مدیون Provider model است . در واقع Provider ، مجموعه ای از اینترفیس ها و کلاس های لازم به منظور ذخیره و بازیابی داده در ارتباط با یک منبع داده خاص را ارائه می نماید. بدیهی است مهمترین دستاورد رویکرد فوق ، انعطاف لازم به منظور نوشتن کد مورد نیاز برای دستیابی به داده ( استفاده از ADO.NET ) از چندین نوع منبع داده می باشد .
در ASP.NET 2.0 ، همچنان از Provider model به منظور انجام عملیات مختلف در ارتباط با دستیابی داده استفاده می گردد .
- NET API ، شامل امکاناتی است که با استفاده و بکارگیری آنان تمامی منابع داده یکسان بنظر می آیند .صرفنظر از منبع داده ، پردازش لازم به منظور بازیابی و استخراج اطلاعات ، مستلزم استفاده از کلاس های کلیدی و عملیات مشابهی است . دربخش دوم با این لایه و امکانات آن بشتر آشنا خواهیم شد.
لایه برنامه وب
ASP.NET ( بالاترین لایه ) با ارائه مجموعه ای از کنترل ها و امکانات باعث کاهش حجم کد مورد نیاز به منظور دستیابی به داده می گردد. مثلا" پیاده کنندگان برنامه های وب می توانند از برنامه کمکی ( ویزارد) منبع داده برای ایجاد و پیکربندی اتوماتیک یک منبع داده استفاده نمایند و در ادامه با اجرای query دلخواه خود ،نتایج مورد نظر را بازیابی نمایند . علاوه بر این ، می توان کنترل های متفاوتی را به یک منبع داده نسبت داد . بدین ترتیب شکل ظاهری و محتوی کنترل می تواند به صورت اتوماتیک مقداردهی گردد ( بر اساس اطلاعات بازیابی شده از منبع داده ) .
کنترل های فوق در اشکال و اندازه های متفاوتی ارائه شده اند ( نظیر Grids ,Trees,Menus و lists ) . برای نسبت دهی یک کنترل به یک منبع داده از خصلت DataSourceID استفاده می شود که می توان آن را در زمان طراحی و یا اجراء تعریف نمود .
کنترل های منبع داده از طریق امکانات ارائه شده توسط یک provider به یک منبع داده نسبت داده می شوند. مهمترین مزیت یک کنترل منبع داده، امکان استفاده از آنان در صفحات مورد نیاز است. علاوه بر این ، برای انجام عملیاتی نظیر paging ، مرتب سازی و بهنگام سازی ضرورتی به نوشتن حتی یک خط کد نخواهد بود .
در بخش دوم با تمرکز بر روی لایه دوم ( ADO.NET API ) با امکانات موجود به منظور کار با ADO.NET ، کنترل های ASP.NET و providers بشتر آشنا خواهیم شد .
دستیابی داده در ASP.NET 2.0 ( بخش دوم )
در بخش اول به مدل دستیابی داده در فریمورک دات نت اشاره و با عناصر اساسی در این معماری آشنا شدیم . در بخش دوم با تمرکز بر روی لایه دوم ( ADO.NET API ) به بررسی امکانات موجود به منظور کار با ADO.NET ، کنترل های ASP.NET و providers خواهیم پرداخت .
Data Access APIs
لایه دوم در معماری دستیابی داده ، مکانیزم های لازم برای کار با ADO.NET ، کنترل های ASP.NET و providers را ارائه می نماید. از امکانات ارائه شده در این لایه می توان به منظور انجام مجموعه ای از عملیات و فرآیندهای متداول استفاده نمود . با استفاده از کنترل های متنوع منبع داده و نسبت دهی داده در ASP.NET 2.0 ، حجم کد مورد نیاز به منظور حمایت از عملیات در ارتباط با داده کاهش و در مواردی نیز حذف می گردد .
Connection و Commands
ADO.NET از چندین Data Provider متفاوت برای اتصال به بانک های اطلاعاتی ، اجرای دستورات و بازیابی نتایج استفاده می نماید . در ADO.NET از شی Connection برای اتصال به یک منبع داده خاص استفاده می گردد . مثلا" در صورت استفاده از بانک اطلاعاتی SQL Server 2000 ، می توان از شی SQLConnection به منظور اتصال به بانک اطلاعاتی استفاده نمود .
شی Command چندین متد Execute را به منظور اجرای Stored Procedure ، query و یا عبارات غیر query نظیر Update و Insert ، ارائه نموده است :
- متد ExecuteReader : داده را به عنوان یک شی DataReader برمی گرداند . از متد فوق می توان در ارتباط با هر نوع query که داده ئی را برمی گرداند ،استفاده نمود .
- متد ExecuteScalar : متد فوق یک مقدار نظیر تعداد رکوردهائی که با شرایط ذکر شده در یک query خاص مطابقت می نمایند و یا نتایج حاصل از فراخوانی یک تابع بانک اطلاعاتی را برمی گرداند .
- متد ExecuteNonQuery : متد فوق ، دستوراتی را که سطرهائی را برنمی گردانند ( نظیر Sored procedure ، update و insert ) ، اجراء می نماید .
در زمان مقداردهی اولیه شی Command می بایست با توجه به شرایط موجود ، متد مورد نظر را انتخاب نمود .
متد ExecuteReader ، نتایج را از طریق یک DataReader برمی گرداند . DataReader یک ساختار داده ئی متصل گراء ، فقط به سمت جلو و فقط خواندنی از داده های حاصل از اجرای یک query را برمی گرداند . پس از اجرای query ، اولین رکورد به DataReader برگردانده می شود . در این حالت ارتباط با بانک اطلاعاتی همچنان وجود داشته و امکان برگرداندن رکورد بعدی وجود خواهد داشت . در ساختمان داده فوق، صرفا" امکان خواندن رکوردها وجود داشته و نمی توان رکوردهای موجود را ویرایش نمود .
DataAdapters و DataSets
با این که DataReader برای برنامه های متصل گرا کافی به نظر می آید ، ولی این ساختمان داده قادر به حمایت از مدل غیرمتصل برای دستیابی به بانک های اطلاعاتی نمی باشد . بدین منظور از کلاس های DataAdapter و DataSet ،استفاده می گردد .
DataSet مهمترین ابزار ذخیره سازی داده در معماری غیرمتصل ADO.NET است . DataSet مستقیما" و از طریق یک شی Connection با بانک اطلاعاتی ارتباط برقرار نمی نماید . برای استقرار داده در یک DataSet می بایست یک DataAdapter ایجاد گردد . مسئولیت DataAdapter ارتباط با بانک اطلاعاتی ، اجرای query و استقرار داده در DataSet می باشد . پس از فراخوانی متد Fill و یا Update توسط DataAdapter ، تمامی عملیات انتقال داده در DataSet به صورت اتوماتیک انجام خواهد شد . هر provider ارائه شده در فریمورک دات نت دارای یک شی DataAdapter است .
DataSet ، مجموعه ای کامل از داده شامل جداول ، محدودیت ها و ارتباط بین جداول را در خود نگهداری می نماید و می تواند شامل داده های محلی ( داده هائی که از طریق کد ایجاد شده اند ) و یا داده هائی از چندین منبع داده باشد .
ارتباط با منابع داده موجود توسط DataAdapter کنترل می گردد . DataAdapter همچنین تغییرات ایجاد شده در DataSet را به منبع داده منتقل می نماید .
و...
NikoFile