آموزش ASP.Net > اتصال به منابع داده ای در ASP.Net > نحوه اتصال به منابع داده ای
در ASP.Net
مقدمه :
نرم افزارها و صفحات ASP.Net به صورت معمول اطلاعات خود را از منابع داده ای مختلف
مثل پایگاه داده SQL Server ،
پایگاه داده Access ، ORALCE یا ... دریافت کرده و نمایش می دهند . برای آسان
سازی اتصال کنترل های نمایش دهنده اطلاعات و صفحات وب برای اتصال به منابع داده ای
، ASP.Net کنترل های سرور داده ای مثل LinqDataSource ،
SqlDataSource یا AccessDataSource
را معرفی کرده است .
در این بخش به صورت اجمالی به معرفی و آموزش نحوه کار با این کنترل ها خواهیم پرداخت
.
کنترل LinqDataSource :
کنترل LinqDataSource ، امکان استفاده از زبان LINQ در صفحات ASP.Net ، برای اتصال و دریافت اطلاعات از
یک شی داده ای را برای شما فراهم می کند . این کنترل به صورت اتوماتیک از قابلیت های
انتخاب ، ویرایش ، حذف ، صفحه بندی ، مرتب سازی و ... داده ها پشتیبانی می کند .
هنگام استفاده از کنترل LinqDataSource برای دریافت اطلاعات از منابع داده ای ، شما
به صورت مستقیم کنترل را به منبع داده متصل نمی کنید .
به جای آن ، شما با موجودیت ها و کلاس هایی که جایگزین پایگاه داده ، جدول ها و اجزای
آنها هستند ، کار می کنید . شما می توانید این موجودیت ها و کلاس ها را با استفاده
از ابزار Object Relational Designer مخفف آن O/R Designer یا اجرای ( SqlMetal.exe
(Code Generation Tool، ایجاد نمایید .
کلاس ها و موجودیت های تولید شده ، معمولا در پوشه App_Code سایت قرار می گیرند . ابزارهای
( Object Relational Designer (O/R Designer یا ( SqlMetal.exe (Code Generation Tool
، برای هر پایگاه داده یک کلاس مجزا و به ازای هر جدول درون آنها نیز یک کلاس جداگانه
ایجاد می کنند .
برای اتصال کنترل LinqDataSource به کلاس پایگاه داده مورد نظر ، بایستی مقدار خاصیت
ContextTypeName کنترل را برابر با نام کلاسی که جانشین پایگاه داده است ، قرار دهیم
.
همچنین کنترل LinqDataSource را به کلاس جدول مورد نظرمان با قرار دادن خاصیت TableName
آن برابر با نام کلاسی که جانشین جدول است ، متصل می کنیم .
برای مثال ، جهت اتصال به جدول Contacts در پایگاه داده AdventureWorks ، مقدار خاصیت
ContextTypeName آن را با نام کلاس مرتبط به آن پایگاه داده ( برای مثال AdventureWorks
یا هر نام دیگری که برای آن تعیین کرده اید ) و مقدار خاصیت TableName آن را با مقدار
Contacts ، مقدار دهی می کنیم .
کد زیر ، یک کنترل LinqDataSource را نشان می دهد که اطلاعات خود را از جدول Products
دریافت می کند . این کنترل به صورت اتوماتیک دستورات لازم برای درج ، ویرایش و حذف
داده در جدول را تولید می کند . همچنین یک DetailsView
متصل به آن ، اطلاعات خروجی را نمایش می دهد :
|
کد
|
<asp:LinqDataSource
ContextTypeName="ExampleDataContext"
TableName="Products"
EnableUpdate="true"
EnableInsert="true"
EnableDelete="true"
ID="LinqDataSource1"
runat="server">
</asp:LinqDataSource>
<asp:DetailsView
DataKeyNames="ProductID"
AutoGenerateEditButton="true"
AutoGenerateDeleteButton="true"
AutoGenerateInsertButton="true"
AllowPaging="true"
DataSourceID="LinqDataSource1"
ID="GridView1"
runat="server"
</asp:DetailsView>
|
کنترل SqlDataSource :
کنترل SqlDataSource ، یک اتصال مستقیم به منبع داده ای را فراهم می کند . سپس کنترل
های داده وب مثل GridView یا
DetailsView می توانند به کنترل SqlDataSource متصل شده و اطلاعات را دریافت
و ویرایش نمایند . شما بایستی دستورات لازم را برای خواندن ، درج ، ویرایش و حذف داده
ها را در کنترل SqlDataSource تعیین کرده و سپس این کنترل عملیات های لازم را به صورت
اتوماتیک انجام می دهد .
شما در استفاده از کنترل SqlDataSource ، نیاز به نوشتن کد خاصی مثل کلاس های ADO.Net
و ... ندارید . برای دریافت اطلاعات بیشتر به بخش
آموزش کنترل SqlDataSource بروید .
مثال : مثال زیر یک کنترل SqlDataSource را نشان می دهد که توسط یک
رشته ارتباطی ConnectionString به پایگاه داده متصل
شده و سپس یک کنترل GridView ، اطلاعات دریافتی را نمایش می دهد :
|
کد
|
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
DataSourceMode="DataReader"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
</asp:SqlDataSource>
<asp:GridView
id="GridView1"
runat="server"
DataSourceID="SqlDataSource1">
</asp:GridView>
|
کنترل AccessDataSource :
ASP.Net برای اتصال سریع و آسان به پایگاه داده Access ، کنترل AccessDataSource را
معرفی کرده است . کنترل AccessDataSource از کلاس SqlDataSource به ارث رقته است و
برای اتصال به فایل های اکسس ( mdb. ) از فراهم کننده داده System.Data.OleDb استفاده
می کند .
برای اتصال یک پایگاه داده Access به کنترل AccessDataSource ، بایستی نام پایگاه داده
اکسس را برابر با خاصیت DataFile کنترل AccessDataSource قرار دهید .
این کنترل بدون نیاز به نوشتن کد خاصی ، اطلاعات را از پایگاه داده اکسس دریافت کرده
و جهت نمایش به کنترل های سرور داده منتقل می کند .
برای دریافت اطلاعات بیشتر راجع به این کنترل ، به
بخش آموزش AccessDataSource بروید .
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1
حمایت نمایید :