جستجو در محصولات

گالری پروژه های افتر افکت
گالری پروژه های PSD
جستجو در محصولات


تبلیغ بانک ها در صفحات
ربات ساز تلگرام در صفحات
ایمن نیوز در صفحات
.. سیستم ارسال پیامک ..
كنترل هاي منبع داده در ASP.NET 2.0
-(1 Body) 
كنترل هاي منبع داده در ASP.NET 2.0
Visitor 536
Category: دنياي فن آوري
يكي از مهمترين اهداف پياده سازي صفحات وب ، ارائه اطلاعات مورد نياز كاربران با توجه به اهداف عملياتي يك وب سايت ( سرويس هاي شخصي و يا عمومي ) است . شايد به همين دليل باشد كه يكي از چالش هاي مهم در خصوص طراحي صفحات ، ايجاد صفحاتي است كه حاوي جديدترين و در عين حال صحيح ترين اطلاعات باشند .
براي نمايش اطلاعات بر روي صفحات وب از چهار روش و يا منبع اساسي استفاده مي گردد :
• درج محتويات ثابت به صورت دستي در بطن صفحات : در اين روش محتويات مورد نظر مستقيما" و به صورت دستي در بطن يك صفحه وب قرار داده مي شود. براي تعريف يك ساختار نمايشي مناسب از تگ هاي Html استفاده مي گردد . به منظور توليد صفحات، مي توان از ابزارهاي توليد مختلفي نظير FrontPage و يا حتي يك اديتور ساده متني استفاده نمود .
• توليد محتويات با استفاده از اسكريپت هاي سمت سرويس گيرنده يا سرويس دهنده : در اين روش به صورت اتوماتيك ، مجموعه اي از اسكريپت هاي سمت سرويس دهنده و يا سرويس گيرنده اجراء و اطلاعات مورد نياز به منظور نمايش در صفحات وب را توليد مي نمايند . اطلاعات ممكن است به صورت ثابت و يا با بكارگيري مجموعه اي از توابع تعبيه شده در يك زبان برنامه نويسي و يا اشياء سمت سرويس دهنده، توليد گردند.
• پردازش بر روي داده هاي ورودي : در اين روش با پردازش بر روي داده ورودي ، اطلاعات مورد نياز به منظور نمايش بر روي صفحات وب توليد مي گردد . در واقع ، بر روي داده هاي خام پردازش مورد نياز توسط اسكريپت ها انجام تا اطلاعات جديدي براي نمايش بر روي صفحات وب توليد گردد .
• بازيابي و پردازش اطلاعات از منابع داده خارجي : در اين روش اطلاعات از منابع داده خارجي استخراج ( بازيابي ) و بر روي صفحات وب نمايش داده مي شود . اطلاعات شخصي ، سازماني و ... در منابع ذخيره سازي عمومي ذخيره و پس از بازيابي و در صورت لزوم انجام پردازش هاي مورد نياز بر روي صفحات وب نمايش داده مي شوند .
هدف اصلي صفحات ASP.NET كاهش و يا حذف فرآيند درج دستي اطلاعات درون صفحات وب است . با تركيب محتويات مورد نياز به منظور نمايش در صفحات وب با تگ هاي Html ، نگهداري ، پشتيباني و بهنگام سازي صفحات وب براي پياده كنندگان مشكل مي گردد . بهنگام سازي و ويرايش محتويات صفحات وب به صورت دستي ، علاوه بر اين كه توجيه زماني ندارد ،‌ مشكلات خاص خود را براي پياده كنندگان صفحات وب نيز به دنبال خواهد داشت .
بهترين گزينه به منظور نگهداري اطلاعات ، جداسازي آنان از صفحاتي است كه قرار است آنان را نمايش دهند . در چنين مواردي صرفا" در صفحات وب ، مكان و فرمت نمايش اطلاعات مشخص مي گردد و اطلاعات در مكاني متمايز از صفحات وب نگهداري مي گردند . پس از درخواست يك صفحه ، اطلاعات از منابع داده بازيابي و در محل تعيين شده برروي صفحات وب قرار خواهند گرفت . در واقع ، صفحات بطور اتوماتيك و پويا در زمان درخواست ايجاد و شامل آخرين اطلاعاتي مي باشند كه بصورت بلادرنگ و Live از منابع داده خارجي استخراج شده اند .
در ادامه به بررسي چهار روش فوق خواهيم پرداخت تا از اين رهگذر جايگاه كنترل هاي منبع داده ارائه شده در ASP.NET 2.0 مشخص و با اين نوع كنترل ها از دو بعد مفاهيم و عمليات آشنا شويم .

روش اول : درج محتويات ثابت به صورت دستي در بطن صفحات

روش استاندارد به منظور ارائه اطلاعات درون صفحات وب ، درج مستقيم و دستي آنان درون صفحات وبي است كه فرمت و قالب نمايش آنان توسط تگ هاي html مشخص شده است .
مثال : در مثال زير اطلاعات به صورت دستي در يك صفحه وب درج و از تگ هاي Html به منظور تعريف فرمت نمايش آنان استفاده شده است .

<html>
<body>
<h3> درج محتويات ثابت به صورت دستي </h3>
<p>

براي ايجاد اين صفحه ، اطلاعات مورد نياز بطور مستقيم و به صورت دستي درون صفحه قرار داده شده اند  .
براي تعريف مجموعه قوانين لازم به منظور نحوه نمايش اطلاعات از تگ هاي Htmlاستفاده شده است . در زماني كه لازم است محتويات اين صفحه تغيير يابد ، مي بايست صفحه را به صورت دستي ويرايش تا متناسب با آن اطلاعات جديد نمايش داده شوند .   
 
</p>
</body>
 </html>
 

روش دوم : توليد محتويات با استفاده از اسكريپت هاي سمت سرويس گيرنده يا سرويس دهنده

در اين روش ، اطلاعاتي كه قرار است درون صفحات نمايش داده شوند ، توسط اسكريپت هائي كه قادر به توليد محتويات ثابت و يا متغير و پويا مي باشند ، ايجاد مي گردد. به منظور توليد و نمايش اطلاعات در زمان نمايش صفحات وب ، مي توان با توجه به جايگاه روتين Page_Laod از آن استفاده و پس از توليد اطلاعات توسط اسكريپت ، آنان را با اطلاعات ثابت تركيب و در نهايت بر روي صفحات وب نمايش داد . در چنين مواردي مي توان فرآيند توليد و در نهايت نمايش اطلاعات را به خواسته هاي كاربران وابسته نمود تا در ادامه متناسب با خواسته آنان روتين هاي مورد نظر فعال و از طريق اسكريپت هاي موجود در آنان ، اطلاعات مورد نياز توليد گردد.
مثال : در مثال زير ، اسكريپت موجود در روتين Page_Load اجراء و پس از توليد اطلاعات مورد نياز ، با استفاده از تگ هاي Html نحوه نمايش آنان بر روي صفحه وب مشخص مي گردد . در مثال فوق از تابع Date ويژوال بيسيك و كنترل هاي سرويس دهنده خروجي استفاده شده است .
پس از توليد اطلاعات توسط اسكريپت ، به منظور نمايش آنان در صفحه از كنترل سرويس دهنده خروجي <asp:Label> استفاده شده است . به كنترل فوق يك مشخصه ( id ) نسبت داده شده است تا امكان دستيابي به آن از طريق اسكريپت هاي سمت سرويس دهنده موجود در روتين Page_Load فراهم گردد. اسكريپت فوق يك رشته از كاراكترهاي متني و Html را به خصلت Text كنترل label و با نام Paragraph نسبت مي دهد. توجه داشته باشيد كه در اين مثال از هيچگونه تگ Html بطور مستقيم استفاده نشده است .

<SCRIPT Runat="Server">

Sub Page_Load

Heading.Text = "<h3>توليدخروجي با استفاده از اسكريپت</h3>"

Paragraph.Text = "<p>امروز, <span style=""color:red"">" & _
Format(DateString, "Long Date") & "</span>, " & _
"اين خروجي توسط اسكريپت توليد شده است  " & _
"پس از توليد اطلاعات‌ ، ماحصل آن در يك كنترل سرويس دهنده خروجي  ، " & _
" نوشته مي گردد . تاريخ نمايش داده شده ، همواره بهنگام بوده و   " & _
" ضرورتي به ويرايش صفحه وجود ندارد  " & _
" </p>"

End Sub

</SCRIPT>

<html>
<body>
<form Runat="Server">

<asp:Label id="Heading" Runat="Server"/>
<asp:Label id="Paragraph" Runat="Server"/>

</form>
</body>
</html>

روش سوم : پردازش بر روي داده هاي ورودي

در اين روش ، اطلاعات اوليه توسط كاربر ارائه و در ادامه از آنان به منظور توليد خروجي استفاده مي گردد . در نهايت اطلاعات توليد شده با استفاده از كنترل ها‍ ي سرويس دهنده خروجي بر روي صفحه وب نمايش داده مي شود .
مثال : در مثال زير ، يك كنترل TextBox در اختيار كاربر قرار داده شده است تا داده مورد نظر را وارد نمايد . پس از درج داده توسط كاربر و كليك بر روي دكمه "Submit" ، روتين مربوطه فعال و پس از انجام عمليات مورد نظر ، نتايج به همراه تگ هاي Html در يك كنترل خروجي label نوشته مي گردند .در اين مثال از سه كنترل سرويس دهنده استفاده شده است :
• يك كنترل asp:Textbox جهت درج داده توسط كاربر
• يك كنترل asp:Button جهت فراخواني روتين مربوطه
• يك كنترل asp:label جهت تعريف يك ناحيه خروجي به منظور نمايش اطلاعات توليد شده
پس از كليك بر روي دكمه مربوطه ، داده ورودي توسط كاربر در عدد هفت ضرب و حاصل با متن ثابت و تگ هاي Html تركيب و در ناحيه خروجي مشخص شده توسط كنترل label نمايش داده مي شود . عمليات فوق توسط روتين MultiPly_Seven انجام مي شود . توجه داشته باشيد كه در اين مثال تمام خروجي توسط اسكريپت توليد شده است .

<SCRIPT Runat="Server">

Sub Multiply_Seven(Src As Object, Args As EventArgs)

If number1.Text <> "" Then
Dim M As Integer
M = number1.Text * 7
Show_Number.Text = "Your Number is <b>" & M &
End If

End Sub

</SCRIPT>

<html>
<body>
<form Runat="Server">

<h3>خروجي توليد شده توسط اسكريپت با استفاده ازداده ورودي</h3>

Enter your age:
<asp:TextBox id="number1" Size="5" Runat="Server"/>
<asp:Button Text="Submit" OnClick="Multiply_Seven" Runat="Server"/>
<asp:Label id="Show_Number" Runat="Server"/>

</form>
</body>
</html>
 

روش چهارم : بازيابي و پردازش داده از طريق منابع داده خارجي

در اكثر وب سايت ها اطلاعات به صورت مستقيم درون صفحات وب درج نمي گردد و يا ماحصل دريافت و پردازش بر روي داده كاربر نمي باشد . در اينگونه سايت ها ، از فايل هاي خارجي و يا بانك هاي اطلاعاتي به عنوان منبع اوليه تامين داده استفاده مي گردد .پس از درخواست يك صفحه وب ، اطلاعات از منابع داده خارجي استخراج و قبل از اين كه براي مرورگر ارسال گردند در مكان تعيين شده در صفحات وب قرار مي گيرند. اطلاعات نمايش داده شده بر روي صفحات وب همواره بهنگام مي باشد چراكه محتويات اينگونه صفحات به صورت پويا و با بهره گيري از منابع اطلاعاتي خارجي ايجاد مي گردد .
مثال : در اين مثال از اطلاعات موجود در جدول Products مربوط به بانك اطلاعاتي TestDb.mdb به منظور نمايش اطلاعات بر روي صفحه وب استفاده شده است .
تمامي پردازش هاي سمت سرويس دهنده از طريق دو كنترل سرويس دهنده موجود بر روي صفحه انجام مي شود :
• asp:GridView ، يك كنترل نمايش اطلاعات است و به يك منبع داده خارجي مرتبط مي گردد . كنترل فوق در نهايت به صورت اتوماتيك اطلاعات بازيابي شده را در قالب يك جدول ( حاوي سطرها و ستون ها) ، نمايش خواهد داد .
• كنترل asp:AccessDataSource ، اطلاعات را از بانك اطلاعاتي استخراج مي نمايد . ارتباط كنترل فوق با GridView از طريق خصلت DataSourceID برقرار شده است . اطلاعات بازيابي شده در فرمتي كه توسط GridView مشخص شده است ، نمايش داده خواهند شد . Style خاصي در ارتباط با جدول بكار گرفته نشده است . كنترل GridView داراي مجموعه اي كامل از گزينه هاي لازم به منظور تعيين لي اوت و يا style جدول نمايش اطلاعات است . كنترل هاي ورودي داده متفاوتي را مي توان به صفحه اضافه نمود تا كاربران قادر به انتخاب اطلاعات مورد نظر خود باشند ( بازيابي و نمايش اطلاعات در كنترل هاي خروجي بر اساس خواسته كاربر)

<html>
 <body>
  <form Runat="Server">
    <h3>خروجي توليد شده با استفاده از بانك اطلاعاتي</h3>
    <asp:AccessDataSource id="Products" Runat="Server"
     DataFile="c:\databases\TestDb.mdb"
     SelectCommand="SELECT ItemNumber, ItemName, ItemPrice, ItemQuantity FROM Products"/>
     <asp:GridView id="ProductsGrid" DataSourceID="Products" Runat="Server"/>
  </form>
</body>
</html>

مزاياي جداسازي محتويات از صفحه اي كه آنان را نمايش مي دهد :
• اطلاعات همواره به روز و صحيح مي باشند .
• در اكثر سايت هاي تجاري ، اغلب اطلاعات در يك بانك اطلاعاتي ذخيره مي گردد. از بانك اطلاعاتي به عنوان مخزن تامين اطلاعات مورد نياز براي انجام عمليات و مديريت فرآيندها استفاده مي گردد . در چنين مواردي ، صفحات وب بهنگام و به سرعت آخرين اطلاعات موجود را نمايش خواهند داد ( صفحات وب Live ) . استخراج داده از اينگونه منابع ذخيره سازي ، در زمان صدور درخواست انجام مي شود .
• صفحات وب بندرت نيازمند تغيير بوده و كد صفحات در زمان تغيير محتويات تغيير نخواهد كرد . در اين مدل ، اطلاعات درمنابع ذخيره سازي داده تغيير داده شده و ماحصل آن بر روي صفحات وب منعكس خواهد شد . در چنين مواردي نيازي به كاركنان فني به منظور نگهداري و بهنگام سازي اطلاعات نخواهد بود . در واقع، افرادي كه از منابع ذخيره سازي داده نگهداري مي نمايند ، نگهداري اطلاعات منتشر شده بر روي وب سايت را نيز برعهده خواهند داشت .
• در صورتي كه محتويات صفحات بندرت تغيير مي يابد ، مي توان از روش درج مستقيم متن درون صفحات وب به صورت دستي استفاده نمود . ولي در صورتي كه محتويات يك صفحه بطور مرتب و با فركانس بالا تغيير مي يابد ، بهتر است كه آنان را در يك فايل و يا منبع داده خارجي ذخيره نمود . در چنين مواردي ، امكان بهنگام سازي محتويات با سهولت بيشتري فراهم مي گردد . صرفنظر از اندازه و پيچيدگي يك وب سايت ، يكي از وظايف اوليه پياده كننده گان برنامه هاي وب ، مديريت داده ها با استفاده از كنترل هاي سرويس دهنده و اسكريپت هائي است كه با تلفيق آنان مي توان اطلاعات را به صورت پويا و متاثر از آخرين داده هاي موجود در بانك اطلاعاتي بر روي صفحات وب نمايش داد .
در بخش دوم به بررسي امكانات ارائه شده در ASP كلاسيك ، ASP.NET 1.x و ASP.NET 2.0 به منظور دستيابي و نمايش داده خواهيم پرداخت تا مسير ما براي بررسي كنترل هاي منبع داده هموار گردد .

امكانات مورد نياز به منظور دستيابي و نمايش داده

دستيابي و نمايش داده دو گام اساسي به منظور استفاده از داده موجود در منابع داده نظير بانك هاي اطلاعاتي و يا فايل هاي Xml مي باشد كه لازم است در ابتدا عليرغم همگرائي هدفمند آنان ، بين دو عمليات فوق تفاوت قائل گرديد.
پياده كنندگان نرم افزار با توجه به نوع پلت فرم ، از مكانيزم هاي خاصي به منظور انجام هر يك از مراحل فوق استفاده مي نمايند :
• دستيابي داده : در اين رابطه لازم است كه از مكانيزم و يا مكانيزم هائي به منظور ايجاد ارتباط با بانك اطلاعاتي ، اجراي يك query و ذخيره مجموعه ركورد برگردانده شده در يك ساختمان داده خاص،‌ استفاده گردد.
• نمايش داده : در اين رابطه لازم است كه از مكانيزم و يا مكانيزم هائي خاص به منظور نمايش داده بازيابي شده با فرمت دلخواه در صفحات وب استفاده گردد .
در زمان دستيابي و نمايش داده همواره با دو پرسش اساسي مواجه شويم : اول اين كه پلت فرم استفاده شده چه نوع امكانات و تسهيلاتي را به منظور دستيابي داده در اختيار پياده كنندگان قرار مي دهد ؟ دوم اين كه براي نمايش داده در صفحات وب ، پلت فرم مورد نظر چه نوع تسهيلاتي را ارائه مي نمايد تا پياده كنندگان بتوانند با صرف كمترين وقت اقدام به توليد صفحاتي نمايند كه محتويات درون آنان متاثر از داده هاي موجود در بانك هاي اطلاعاتي باشد؟
اجازه دهيد پاسخ به دو پرسش فوق را با بررسي سه محيط متفاوت ASP كلاسيك ، ASP.NET 1.x و ASP.NET 2.0 انجام دهيم .

ASP كلاسيك

پياده كنندگاني كه از فن آوري ASP در گذشته اي نه چندان دور به منظور پياده سازي برنامه هاي وب با محوريت دستيابي داده استفاده مي كردند ، مجبور بودند براي دستيابي و نمايش داده ، اقدام به نوشتن كدهاي مورد نياز نمايند .

دستيابي‌ داده

گرچه به منظور دستيابي به داده در ASP كلاسيك از اشياء متفاوتي كه به جملگي آنان ADO ( برگرفته از ActiveX Data Object ) گفته مي شود ، استفاده مي گرديد ولي پياده كنندگان مي بايست تمامي مراحل ايجاد ارتباط با بانك اطلاعاتي تا اجراي يك Query ، تشكيل يك Recordset و حركت در بين ركوردهاي موجود در recordset را مستقيما" كد نمايند . دستيابي داده در ASP كلاسيك مستلزم انجام مراحل زير است :
• مرحله اول : ايجاد يك ارتباط با بانك اطلاعاتي
• مرحله دوم : مشخص نمودن provider و مسير فيزيكي ذخيره بانك اطلاعاتي
• مرحله سوم : ايجاد يك Recordset
• مرحله چهارم : تعريف يك query
• مرحله پنجم : باز كردن بانك اطلاعاتي با توجه به ارتباط ايجاد شده و اجراي query مورد نظر
• مرحله ششم : بازيابي ركوردها و ذخيره آنان در يك recordset

نمايش داده

در ASP كلاسيك، امكانات پيشرفته اي به منظور نمايش داده وجود نداشت و تمام ابزار پياده كنندگان ، يك جدول Html بود كه مي توانسنتد به صورت پويا سطرها و ستون هائي را به آن اضافه نمايند ( جدول از نوع Html نه به عنوان يك كنترل سرويس دهنده ) .
مثلا" براي نمايش نتايج برگردانده شده در اثر اجراي يك query ، پياده كنندگان مجبور بودند كه در ابتدا داده را بازيابي نموده و در ادامه با استفاده از تگ <Tabel> يك جدول را ايجاد و به موازات حركت در بين ركوردهاي برگردانده شده و از طريق يك حلقه تكرار ، هر يك از ركوردها را به عنوان يك سطر جديد به جدول اضافه نمايند . براي افزودن يك سطر جديد ، در ابتدا با استفاده از يك تگ <tr> يك سطر جديد ايجاد و در ادامه براي هر يك از فيلدهاي موجود در جدول بانك اطلاعاتي كه اطلاعات مرتبط با آنان بازيابي شده است يك ستون به كمك تگ <td> ايجاد و در نهايت پس از نمايش تمامي ركوردهاي موجود درrecordset ،‌ انتهاي جدول با استفاده از تگ < table /> مشخص مي گردد .
نمايش داده در ASP كلاسيك مستلزم انجام مراحل زير است :
• مرحله اول : ايجاد يك جدول به همراه عناوين ستون ها در خارج از حلقه تكرار
• مرحله دوم : ايجاد يك حلقه تكرار كه شرط خاتمه آن رسيدن به انتهاي ركوردهاي موجود در Recordset است .
• مرحله سوم : ايجاد يك سطر در حلقه تكرار كه شرايط نمايش يك ركورد را فراهم نمايد .
• مرحله چهارم : ايجاد ستون هاي مورد نظر در هر سطر و نمايش فيلدهاي داده بازيابي شده موجود در Recordset
• مرحله پنچم: حركت اشاره گر به ركوردهاي موجود در recordset به سمت جلو
• مرحله ششم : غيرفعال كردن اتصال ايجاد شده با بانك اطلاعاتي
• مرحله هفتم : بستن جدول پس از اتمام حلقه تكرار
كد زير نحوه انجام عمليات فوق ( دستيابي و نمايش داده) در ASP كلاسيك را نشان مي دهد :

نحوه دستيابي 

<%
Set adoCon = Server.CreateObject("ADODB.Connection")
strCon = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/../Test.mdb")
Set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM TestTable
rs.Open strSQL, strCon

نحوه نمايش 


<table width="548"   height="20" >
<tr>
   <td>عنوان ستون اول  </td>
   <td>عنوان ستون دوم</td>
</tr>
 <%While (NOT rs.Eof)  %>
 <tr>
  <td><%=Rs("Field1")%></td>
  <td><%=Rs("Field2")%></td>
 </tr>
  <%
   rs.MoveNext
   WEND
   Set rs = Nothing
   Set adoCon = Nothing
%>
</table>

همانگونه كه مشاهده مي نمائيد ، عمليات دستيابي و نمايش داده مستلزم نوشتن كدهاي مورد نياز توسط پياده كننده است . در مواردي كه لازم است اطلاعات با يك فرمت خاص در جدول نمايش داده شود ، پياده كنندگان مي بايست از امكانات موجود به منظور تعريف فرمت مورد نياز براي هر يك از سطرها و يا ستون ها به صورت پويا استفاده نمايند . انجام اين كار همواره براي پياده كنندگان مشكل و يا حداقل زمان گير است .
در ASP كلاسيك ما در دو بخش دستيابي و نمايش دچار كمبود امكانات بالقوه مي باشيم و پياده كنندگان مجبور به نوشتن كد لازم به منظور انجام هر يك از عمليات دستيابي و نمايش داده مي باشند .
دنياي پوياي برنامه نويسي همواره اين وضعيت را داشته است و در ابتدا پايه يك چيز بر اساس امكانات موجود در زمان خود ايجاد مي گردد و در ادامه با پيشرفت در فن آوري ها ، امكانات و پتانسيل هاي جديدي در اختيار پياده كنندگان قرار مي گيرد با اين اميد كه بتوان يك نرم افزار را در زماني معقول و هزينه اي منطقي پياده سازي نمود . برنامه هاي وب نيز از اين قاعده مستثني نبوده و تمامي پياده كنندگاني كه از ASP كلاسيك به منظور پياده سازي برنامه هاي وب استفاده مي كردند ، در انتظار يك تحول بزرگ بودند ، تحولي كه با ارائه ASP.NET 1.x شروع گرديد .

ASP.NET 1.x

ASP.NET 1.x ، نسبت به نسخه قبلي يعني ASP كلاسيك با تغييرات گسترده اي ارائه گرديد . از جمله تغييرات مهم در ارتباط با دستيابي و نمايش داده ، ارائه مجموعه كنترل هائي بود كه پياده كنندگان مي توانستند از آنان به منظور نمايش اطلاعات بازيابي شده از منابع داده استفاده نمايند . در اين نسخه ، براي دستيابي به داده از امكاناتي نظير بكارگيري كنترل هاي خاصي استفاده نمي گرديد و عملا" روش هاي دستيابي داده در ASP.NET 1.x شباهت زيادي به نمايش داده در برنامه هاي نوشته شده با استفاده از ASP كلاسيك داشت .
همانگونه كه اشاره گرديد ، در ASP كلاسيك به منظور نمايش اطلاعات بازيابي شده از بانك هاي اطلاعاتي و ساير منابع داده ، پياده كنندگان مجبور بودند كد لازم براي بازيابي و حركت بين ركوردهاي بازيابي شده را نوشته و پس از تعريف يك فرمت مناسب ، محتويات مورد نظر را كه شامل اطلاعات بازيابي شده و تگ هاي Html است ، بر اساس يك ساختار خاص تعريف شده توسط پياده كننده در صفحات وب نمايش دهند . بدين منظور كنترل هاي سرويس دهنده خاصي كه از آنان با نام كنترل هاي نمايش اطلاعات و يا كنترل هاي داده وب نام برده مي شود، ايجاد گرديد . پياده كننده گان با استفاده از كنترل هاي فوق قادر به نمايش اطلاعات بازيابي شده از منابع داده در صفحات وب بودند . كنترل هاي DataGrid,DataList,Repeater و يا حتي DropDownList نمونه هائي ‌از ساختارهاي نمايش اطلاعات مي باشند كه استفاده از آنان مستلزم نوشتن كد زيادي نمي باشد و با حداقل كد لازم مي توان آنان را آماده نمايش اطلاعات مرتبط با يك منبع داده نمود . به عنوان نمونه ، پياده كنندگان با استفاده از يك كنترل سرويس دهنده نمايش اطلاعات نظير DataGrid لازم نبود كه خود را درگير تگ هاي Html به منظور ايجاد يك جدول نمايند .
همانگونه كه اشاره گرديد ، يكي از مهمترين تغييرات ASP.NET 1.x نسبت به نسخه قبلي خود يعني ASP ، ارائه كنترل هاي سرويس دهنده نمايش اطلاعات است كه اين امكان را در اختيار پياده كنندگان قرار مي دهد تا با نوشتن حداقل كد لازم بتوانند داده مورد نظر را از هر نوع منبع داده بازيابي و با فرمت دلخواه و بهره گيري از پتانسيل هاي تگ هاي Html بر روي صفحات وب نمايش دهند . رويكرد فوق دو دستاورد مهم را براي پياده كنندگان به دنبال داشت :
• با توجه به اين كه به منظور نمايش اطلاعات بر روي صفحات وب به كد اندكي نياز مي باشد ، در وقت پياده كنندگان صرفه جوئي مي گردد.
• به مهارت اندكي به منظور نمايش اطلاعات برروي صفحات وب نياز مي باشد .
در ASP.NET 1.x كنترل هاي سرويس دهنده نمايش اطلاعات و يا كنترل هاي داده وب ، يك الگوي مناسب به منظور نمايش داده را ارائه مي نمايند كه به نحوه تفسير و نمايش داده در هر يك از كنترل هاي سرويس دهنده نمايش اطلاعات وابسته نخواهد بود . مثلا" داده موجود در DataGrid در يك ساختار مشابه جدول متشكل از مجموعه اي سطر و ستون و يا در يك كنترل DropDownList نمايش داده مي شود . نحوه نسبت دهي داده به دو كنترل فوق مشابه مي باشد و مي بايست خصلت DataSource آنان به درستي مقداردهي شود و با استفاده از متد DataBind عمليات نسبت دهي داده به كنترل مربوطه انجام شود .

دستيابي داده

همانگونه كه اشاره گرديد ، براي دستيابي به داده از امكاناتي نظير بكارگيري كنترل هاي خاصي استفاده نمي گرديد و عملا" روش هاي دستيابي داده در ASP.NET 1.x شباهت زيادي به برنامه هاي نوشته شده با استفاده از ASP كلاسيك دارد . دستيابي‌ داده در ASP.NET 1.x مستلزم انجام مراحل زير است :
• مرحله اول : ايجاد يك ارتباط با بانك اطلاعاتي و فعال نمودن آن
• مرحله دوم : تعريف يك query
• مرحله سوم : ايجاد يك recordset
• مرحله چهارم : نسبت دادن recordset به كنترل سرويس دهنده استفاده شده براي‌ نمايش اطلاعات
• غيرفعال كردن ارتباط ايجاد شده با بانك اطلاعاتي و بستن recordset

نمايش داده

براي نمايش اطلاعات بازيابي شده از منابع داده در ASP.NET 1.x ،‌ كنترل هاي سرويس دهنده نمايش اطلاعات متعددي نظيرDataGrid,DataList,Repeater ارائه شده است . با استفاده از كنترل هاي فوق علاوه بر امكان مديريت آنان توسط برنامه در زمان پياده كنندگان نيز صرفه جوئي مي گردد . نمايش داده در ASP.NET 1.x مستلزم انجام مراحل زير است :
• تعريف يك كنترل سرويس دهنده نمايش اطلاعات و يا داده وب در بخش Html يك صفحه aspx .
• اختصاص يك شناسه خاص به آن كه از طريق خصلت id انجام مي شود .
• نسبت دادن recordset بازيابي شده به خصلت DataSource كنترل در بخش Script يك صفحه aspx .
• استفاده از متد DataBind كنترل سرويس دهنده نمايش اطلاعات به منظور انتشار داده بازيابي شده در كنترل از طريق بخش Script يك صفحه aspx .
كد زير نحوه انجام عمليات فوق ( دستيابي و نمايش داده) در ASP,NET 1.x را نشان مي دهد :

 بخش اسكريپت

نحوه دستيابي

Add Comments
Name:
Email:
User Comments:
SecurityCode: Captcha ImageChange Image