خانه > مقالات > ado.net > ذخيره و بازيابی داده توسط ADO.NET (بخش سوم)
منو
کاربری
سلام مهمان
IP: 38.107.179.220

نام کاربری
رمز عبور
ثبت نام
 رمز عبور فراموش شده
تاپ لینک
اشتراک گوگل
ذخيره و بازيابی داده توسط ADO.NET (بخش سوم)
Date 27/06/2009 04:52 Author شركت سخا روش
RSS
اکثربرنامه کامپيوتری نيازمند دستيابی به داده  از طريق يک منبع داده ( Data Source ) می باشند . فريمورک دات نت ، امکان طراحی و پياده سازی برنامه های کامپيوتری با محوريت داده را فراهم و امکان دستيابی به داده از طريق  منابع داده متفاوت و با استفاده از يک محيط همگن و يکپارچه توسط ADO.NET را فراهم می نمايد. ADO.NET امکان ايجاد برنامه های توزيعی و اشتراک داده بين آنان را فراهم می نمايد . با استفاده از امکانات ADO.NET امکان ارتباط با منابع داده متفاوت ، بازيابی ، پردازش و بهنگام سازی داده فراهم می گردد. ADO.NET از XML به منظور انتقال داده بين برنامه ها و منابع داده ، استفاده می نمايد.
اکثر کنترل های سرويس دهنده ASP.NET  دارای پتانسيلی با نام " نسبت دهی داده " ( Data Binding ) ، می باشند. نسبت دهی داده ، فرآيندی است که در آن امکان استفاده از داده در يک برنامه وب فراهم می گردد. مثلا" می توان کنترل های سرويس دهنده DataGrid و DataList  را بر روی يک فرم وب و به منظور نمايش داده موجود در يک Data Set استفاده نمود . دراين مقاله قصد داريم به با نحوه نمايش يک Data Set بر روی يک فرم وب با استفاده از کنترل  DataGrid  بيشتر آشنا شويم .

 

منابع داده ( Data Sources )
 "منبع داده " ، يک بانک اطلاعاتی سرويس دهنده  و يا يک فايل XML می باشد . برای دستيابی به يک منبع داده ، می بايست يک ارتباط( Connection ) با منبع داده از طريق Data Providers ، ايجاد گردد.Data Provider  ارائه شده همراه  ADO.NET ،   امکان برقراری  ارتباط به يک منبع داده و انجام عمليات متفاوتی نظير اجرای دستورات  SQL  را فراهم می نمايد .

 

NET Data Provider .
Data Provider ، امکان برقراری ارتباط با يک منبع داده را فراهم و در ادامه می توان دستوراتی را اجراء و نتايج مورد نظر را بازيابی نمود. . يک Data Provider ارائه شده در دات نت ، شامل اشياء Connection,Command,DataReader و DataAdapter بوده که امکان ارتباط با بانک اطلاعاتی و اجرای دستورات SQL را فراهم می نمايد. ويژوال استوديو دات نت و فريمورک دات نت ، شامل دو Provider ، با نام OLE DB .NET و SQL Server .NET می باشد . با استفاده از OLE DB.NET Provider می توان به منابع داده از نوع OLE DB ارتباط برقرار نمود. با بکارگيری SQL Server .NET Provider ، امکان برقراری ارتباط با بانک های اطلاعاتی SQL Server 7.0 و بعد از آن فراهم می گردد.

 

DataSet 

  •  يک Cache از رکوردهای بازيابی شده از يک منبع داده نظير يک بانک اطلاعاتی و يا يک فايل XML است.

  • شامل رکوردهائی از يک و يا چندين جدول و اطلاعاتی در خصوص نحوه ارتباط آنان می باشد.

  • با استفاده از DataSet ، امکان انجام پردازش دلخواه با توجه به خواسته کاربر ، ميسر می گردد.

  • از DataSet بدون يک منبع داده به منظور مديريت داده دريافتی از يک برنامه و يا يک فايل XML ، استفاده می گردد .

  • امکان ارتباط با بانک اطلاعاتی را به صورت غيرمتصل فراهم می نمايد .

  • امکان مبادله يک DataSet بين عناصر موجود در لايه های متفاوت وجود دارد. مثلا" يک عنصر در Tier ميانی می تواند اقدام به ايجاد و توزيع يک DataSet و ارسال آن برای عنصر ديگر در يک برنامه نموده تا امکان پردازش لازم برروی DataSet ، فراهم گردد.

  • در زمان ايجاد يک برنامه با محوريت داده که از ADO.NET استفاده می گردد ، داده بين اشياء متفاوت منتقل می گردد. داده در ابتدا از يک منبع داده به يک DataSet  و در ادامه به عنصر مورد نظر منتقل می گردد( نظير کنترل ها در يک فرم وب) .

  • ADO.NET از XML به منظور انتقال داده بين عناصر متفاوت يک برنامه استفاده می نمايد . ADO.NET به صورت اتوماتيک فايل های XML را با استفاده از داده موجود در يک DataSet ايجاد و در ادامه آنان را برای عنصر ديگر ارسال می نمايد .

  • يک DataSet ، مجموعه ای از جداول و اطلاعاتی در رابطه با نحوه ارتباط بين آنان می باشد. هر جدول شامل مجموعه ای از سطرها ، ستون ها و محدوديت ها است . برای دستيابی به اين عناصر می توان از خصلت ها و مجموعه های يک DataSet استفاده نمود. برای کار با DataSet در ADO.NET از کلاس های زير استفاده می شود :
    - کلاس DataSet : کلاس فوق ، شامل مجموعه Tables از جداول موجود در يک DataSet می باشد . علاوه بر اين،  کلاس DataSet شامل مجموعه Relations بوده که ارتباط بين جداول در يک DataSet را مشخص می نمايد .
    - کلاس DataTables : کلاس فوق ، شامل مجموعه های Rows و Columns بوده که مسئوليت ارائه سطرها و ستون ها را برعهده دارند.کلاس فوق، همچنين شامل مجموعه های ChildRelation و ParentRelation بوده که ارتباط بين جداول را مشخص می نمايد.
    - کلاس DataRow : کلاس فوق ، شامل خصلت RowState می باشد . خصلت فوق ، تغيير يک سطر پس از لود شدن جدول از يک بانک اطلاعاتی را مشخص نموده و می تواند دارای مقادير Deleted,Modified,New و Unchanged ، باشد .

 

DataGrid
کنترل سرويس دهنده وب DataGrid ، داده ها را در يک لی اوت جدول بندی شده ، نمايش میدهد . به صورت پيش فرض DataGrid داده را در حالت Read-only ( فقط خواندنی ) نمايش داده  ولی امکان نمايش داده به صورت اتوماتيک در زمان اجراء  در کنترل های قابل ويرايش ، نيز وجود دارد DataGrid ، امکان Pagging را نيز فراهم می نمايد .کنترل DataGrid ، فيلدهای يک منبع داده را به عنوان ستون هائی در يک جدول نمايش می دهد. هر سطر در کنترل DataGrid نشان دهنده يک رکورد در منبع داده است . کنترل DataGrid امکاناتی همچون : انتخاب ، ويرايش ، حذف ، مرتب سازی و paging را حمايت می نمايد .

 


نمايش يک DataSet در DataGrid
ساده ترين روش نمايش يک Data Set بر روی يک فرم وب ، استفاده از کنترل DataGrid و مقداردهی مناسب خصلت DataSource آن می باشد.بدين منظور مراحل زير را دنبال می نمائيم :

  • ايجاد اشياء  Connection,Adapter و Dataset ( در بخش اول مقاله ، توضيح داده شده است ) .

  • اضافه نمودن يک کنترل DataGrid بر روی فرم وب

  • مقداردهی خصلت DataSource مربوط به DataGrid به نام Data Set

 

  • افزودن کد لازم در رويداد Page_Load به منظور پر نمودن Data Set از طريق Adapter و نسبت دهی داده از Data Set به DataGrid

VB.NET

Private Sub Page_Load (ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Mybase.Load
   SqlDataAdapter1.Fill(DataSet11)
   DataGrid1.DataBind()
End Sub

 

روتين فوق ، تمامی ستون های موجود در Data Set را بدون فرمت مناسب و به صورت زير نمايش می دهد :

 

همانگونه که مشاهده می شود ،DataGrid بدون فرمت خاصی نمايش داده شده است .برای انتخاب ستون هائی که قصد نمايش آنان را در DataGrid داريم  و همچنين تعريف فرمت مناسب برای نمايش هر يک از آنان ، مراحل زير را دنبال می نمائيم :

  • کليک بر روی Property Builder در پنجره Properties . در ادامه ، جعبه محاوره ای Properties برای DataGrid نمايش داده می شود .

  • در صورتی که قصد نمايش تمام ستون های موجود را در DataGrid داشته باشيم ، می بايست گزينه Create Columns automatically at run time  به همان وضعيت پيش فرض ( انتخاب شده ) باقی مانده و صرفا" با انتخاب گزينه Format ، اقدام به تعريف فرمت نمايش DataGrid و هر يک از ستون های مربوط به آن نمود.

  • در صورتی که قصد نمايش تمامی ستون های موجود را در DataGrid نداشته باشيم می بايست مقدارگزينه Create Columns automatically at run time  ، غير فعال و در ادامه با استفاده از دکمه ">"، ، ستون ها ی مورد نظر به منظور نمايش در DataGrid را مشخص نمود . پس از انتخاب هر ستون می توان تظميمات لازم در ارتباط با آن  را انجام داد. به عنوان نمونه ، می توان با استفاده از  Header Text ،  عنوان هر يک از ستون ها و با استفاده از   Footer Text عنوان مورد نظر برای نمايش در قسمت پائين هر ستون را مشخص نمود ( مقدار پيش فرض ، Blank است ) .

  • برای تعريف فرمت مناسب برای هر يک از ستون ها در DataGrid ، گزينه Format را از طريق جعبه محاوره ای DataGrid Properties  انتخاب و در ادامه می توان تنظيمات لازم ( رنگ رويه ، رنگ زمينه ، نوع و اندازه فونت ، تراز متن )  به منظور نمايش DataGrid ، عناوين ،  ستون های انتخاب شده و ساير موارد ديگر را انجام داد. ( بررسی تمامی امکانات DataGrid از حوصله اين مقاله خارج بوده و در مقالاتی جداگانه به بررسی کامل آن خواهيم پرداخت ) .

 

 شکل زير يک DataGrid فرمت شده را نمايش می دهد :

 

در بخش چهارم اين مقاله با نحوه استفاده از Data Set در يک DataList آشنا خواهيم شد.

Tags -   
نظری وجود ندارد
نام
ایمیل
نظر
mail:info@taymaz.ir    tel: 0914 401 5436 --- 0914 103 6932 --- 0935 428 0101
script & code