الادو نت في برمجة صفحات الويب آي إس بي ADO.NET ASP.NET
الادو نت في برمجة صفحات الويب آي إس بي
ADO.NET ASP.NET
الادو نت في برمجة صفحات الويب آي إس بي ADO.NET ASP.NET
يوفر ADO.NET جسرًا بين عناصر التحكم في النهاية الأمامية وقاعدة بيانات النهاية الخلفية. تقوم كائنات ADO.NET بتغليف جميع عمليات الوصول إلى البيانات وتتفاعل عناصر التحكم مع هذه الكائنات لعرض البيانات ، وبالتالي تخفي تفاصيل حركة البيانات.
يوضح الشكل التالي كائنات ADO.NET في لمحة:
The DataSet Class
تمثل مجموعة البيانات مجموعة فرعية من قاعدة البيانات. ليس لديه اتصال مستمر بقاعدة البيانات. لتحديث قاعدة البيانات مطلوب إعادة الاتصال. تحتوي DataSet على كائنات DataTable وكائنات DataRelation. تمثل كائنات DataRelation العلاقة بين جدولين.
يعرض الجدول التالي بعض الخصائص المهمة لفئة DataSet:
الخاصية | الوصف |
---|---|
CaseSensitive | يشير إلى ما إذا كانت مقارنات السلسلة داخل جداول البيانات حساسة لحالة الأحرف. |
Container | الحصول على الحاوية للمكون. |
DataSetName | الحصول على أو تعيين اسم مجموعة البيانات الحالية. |
DefaultViewManager | إرجاع عرض للبيانات في مجموعة البيانات. |
DesignMode | يشير إلى ما إذا كان المكون في وضع التصميم حاليًا. |
EnforceConstraints | يشير إلى ما إذا كان يتم اتباع قواعد القيد عند محاولة أي عملية تحديث. |
Events | الحصول على قائمة معالجات الأحداث المرتبطة بهذا المكون. |
ExtendedProperties | الحصول على مجموعة من معلومات المستخدم المخصصة المرتبطة DataSet . |
HasErrors | يشير إلى ما إذا كان هناك أي أخطاء. |
IsInitialized | يشير إلى ما إذا كان يتم تهيئة DataSet. |
Locale | الحصول على أو تعيين المعلومات المحلية المستخدمة لمقارنة السلاسل داخل الجدول. |
Namespace | الحصول على أو تعيين مساحة اسم DataSet. |
Prefix | الحصول على بادئة XML أو تعيينها لتعريف مساحة اسم DataSet. |
Relations | إرجاع مجموعة كائنات DataRelation. |
Tables | إرجاع مجموعة كائنات DataTable. |
يعرض الجدول التالي بعض الدوال المهمة لفئة DataSet:
الدالة | الشرح |
---|---|
AcceptChanges | يقبل كل التغييرات التي تم إجراؤها منذ تحميل DataSet أو تم استدعاء هذه الدالة |
BeginInit | يبدأ تهيئة DataSet. التهيئة يحدث في وقت التشغيل. |
Clear | مسح البيانات. |
Clone | نسخ بنية DataSet ، بما في ذلك جميع مخططات DataTable والعلاقات والقيود. لا ينسخ أي بيانات. |
Copy | نسخ كل من هيكل والبيانات. |
CreateDataReader() | إرجاع DataTableReader بنتيجة واحدة لكل DataTable ، بنفس التسلسل الذي تظهر به الجداول في مجموعة Tables. |
CreateDataReader(DataTable[]) | إرجاع DataTableReader بنتيجة واحدة لكل DataTable. |
EndInit | ينتهي تهيئة مجموعة البيانات. |
Equals(Object) | لتحديد ما إذا كان الكائن المحدد يساوي الكائن الحالي . |
Finalize | الموارد الحرة وإجراء عمليات التنظيف الأخرى. |
GetChanges | تقوم بإرجاع نسخة من DataSet مع كل التغييرات التي تم إجراؤها منذ أن تم تحميلها أو تم استدعاء الأسلوب AcceptChanges . |
GetChanges(DataRowState) | الحصول على نسخة من DataSet مع كل التغييرات التي تم إجراؤها منذ أن تم تحميلها أو تم استدعاء الأسلوب AcceptChanges ، تمت تصفيته بواسطة DataRowState. |
GetDataSetSchema | الحصول على نسخة من XmlSchemaSet لـ DataSet. |
GetObjectData | يملأ كائن معلومات التسلسل بالبيانات اللازمة لإجراء تسلسل DataSet. |
GetType | الحصول على نوع المثيل الحالي. |
GetXML | إرجاع تمثيل XML للبيانات. |
GetXMLSchema | إرجاع مخطط XSD لتمثيل XML للبيانات. |
HasChanges() | الحصول على قيمة تشير إلى ما إذا كانت DataSet بها تغييرات ، بما في ذلك الصفوف الجديدة أو المحذوفة أو المعدلة. |
HasChanges(DataRowState) | الحصول على قيمة تشير إلى ما إذا كانت DataSet بها تغييرات ، بما في ذلك الصفوف الجديدة أو المحذوفة أو المعدلة ، التي تمت تصفيتها بواسطة DataRowState. |
IsBinarySerialized | تفقد تنسيق التمثيل المتسلسل لـ DataSet. |
Load(IDataReader, LoadOption, DataTable[]) | تعبئة DataSet بقيم من مصدر بيانات باستخدام IDataReader المتوفر ، باستخدام صفيف من مثيلات DataTable لتوفير معلومات المخطط ومساحة الاسم. |
Load(IDataReader, LoadOption, String[]) | تعبئة DataSet بقيم من مصدر بيانات باستخدام IDataReader المتوفر ، باستخدام صفيف من السلاسل لتزويد أسماء الجداول داخل DataSet. |
Merge() | يدمج البيانات مع البيانات من DataSet آخر. هذه الطريقة لها أشكال مختلفة مثقلة. |
ReadXML() | يقرأ مخطط XML والبيانات في DataSet. هذه الطريقة لها أشكال مختلفة مثقلة. |
ReadXMLSchema(0) | يقرأ ومخطط XML في DataSet. هذه الطريقة لها أشكال مختلفة مثقلة. |
RejectChanges | يسترجع كل التغييرات التي تم إجراؤها منذ آخر مكالمة إلى AcceptChanges. |
WriteXML() | يكتب مخطط XML وبيانات من DataSet. هذه الطريقة لها أشكال مختلفة مثقلة. |
WriteXMLSchema() | يكتب بنية DataSet كمخطط XML. هذه الطريقة لها أشكال مختلفة مثقلة . |
فئة جدول البيانات The DataTable Class
تمثل فئة DataTable الجداول في قاعدة البيانات. لديها الخصائص الهامة التالية ؛ معظم هذه الخصائص هي خصائص للقراءة فقط باستثناء خاصية PrimaryKey:
الخاصية | الوصف |
---|---|
ChildRelations | إرجاع مجموعة علاقة بالابن. |
Columns | .إرجاع مجموعة الأعمدة |
Constraints | إرجاع مجموعة القيود. |
DataSet | إرجاع الأصل DataSet. |
DefaultView | إرجاع طريقة عرض الجدول. |
ParentRelations | إرجاع مجموعة ParentRelations. |
PrimaryKey | الحصول على أو تعيين مجموعة من الأعمدة كمفتاح أساسي للجدول. |
Rows | .إرجاع مجموعة الصفوف |
يعرض الجدول التالي بعض الطرق المهمة للفئة DataTable:
الدالة | الوصف |
---|---|
AcceptChanges | يعتمد كل التغييرات منذ AcceptChanges الماضي . |
Clear | مسح جميع البيانات من الجدول. |
GetChanges | تقوم بإرجاع نسخة من DataTable مع كل التغييرات التي تم إجراؤها منذ استدعاء الأسلوب AcceptChanges . |
GetErrors | إرجاع ومجموعة الصفوف مع الأخطاء. |
ImportRows | نسخ صف جديد في الجدول. |
LoadDataRow | البحث عن وتحديث صف محدد ، أو إنشاء صف جديد ، إن لم يكن موجودًا. |
Merge | يدمج الجدول مع DataTable آخر. |
NewRow | ينشيء DataRow جديدة. |
RejectChanges | يسترجع كل التغييرات التي تم إجراؤها منذ آخر مكالمة إلى AcceptChanges. |
Reset | إعادة تعيين الجدول إلى حالته الأصلية. |
Select | إرجاع ومجموعة من كائنات DataRow. |
فئة بيانات الصف The DataRow Class
يمثل كائن DataRow صفًا في جدول. له الخصائص المهمة التالية:
الخصائص | الوصف |
---|---|
HasErrors | يشير إلى ما إذا كان هناك أي أخطاء. |
Items | الحصول على أو تخزين البيانات المخزنة في عمود معين. |
ItemArrays | الحصول على أو تعيين جميع القيم للصف. |
Table | إرجاع الجدول الأصل. |
يعرض الجدول التالي بعض الطرق المهمة للفئة DataRow:
الدوال | الوصف |
---|---|
AcceptChanges | تم استدعاء جميع التغييرات التي تمت منذ هذه الطريقة. |
BeginEdit | بدء عملية التعديل. |
CancelEdit | يلغي عملية التعديل. |
Delete | يحذف DataRow. |
EndEdit | ينهي عملية التعديل. |
GetChildRows | يحصل الابن الصفوف من هذا الصف. |
GetParentRow | الحصول على الصف الأصل. |
GetParentRows | الحصول على الصفوف الأصل لكائن DataRow. |
RejectChanges | يسترجع كل التغييرات التي تم إجراؤها منذ آخر مكالمة إلى AcceptChanges. |
كائن The DataAdapter Object
يعمل كائن DataAdapter كوسيط بين كائن DataSet وقاعدة البيانات. يساعد هذا مجموعة البيانات على احتواء بيانات من قواعد بيانات متعددة أو مصدر بيانات آخر.
كائن قاري البيانات The DataReader Object
يعد كائن DataReader بديلاً لمجموعة DataSet و DataAdapter. يوفر هذا الكائن وصولًا موجهًا إلى سجلات البيانات في قاعدة البيانات. هذه الكائنات مناسبة للوصول للقراءة فقط ، مثل ملء قائمة ثم قطع الاتصال.
DbCommand and DbConnection Objects
يمثل كائن DbConnection اتصال بمصدر البيانات. يمكن مشاركة الاتصال بين كائنات الأوامر المختلفة.
يمثل كائن DbCommand الأمر أو الإجراء المخزن المرسل إلى قاعدة البيانات من استرداد البيانات أو معالجتها.
يمثل كائن DbCommand الأمر أو الإجراء المخزن المرسل إلى قاعدة البيانات من استرداد البيانات أو معالجتها.
مثال Example
حتى الآن ، استخدمنا الجداول وقواعد البيانات الموجودة بالفعل في جهاز الكمبيوتر الخاص بنا. في هذا المثال ، سنقوم بإنشاء جدول وإضافة عمود وصفوف وبيانات إليه وعرض الجدول باستخدام كائن GridView.
رمز الملف المصدر كما هو محدد:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="createdatabase._Default" %> xmlns="http://www.w3.org/1999/xhtml" > runat="server">Untitled Page
The code behind file is as given: الكود البرمجي
namespace createdatabase { public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { DataSet ds = CreateDataSet(); GridView1.DataSource = ds.Tables["Student"]; GridView1.DataBind(); } } private DataSet CreateDataSet() { //creating a DataSet object for tables DataSet dataset = new DataSet(); // creating the student table DataTable Students = CreateStudentTable(); dataset.Tables.Add(Students); return dataset; } private DataTable CreateStudentTable() { DataTable Students = new DataTable("Student"); // adding columns AddNewColumn(Students, "System.Int32", "StudentID"); AddNewColumn(Students, "System.String", "StudentName"); AddNewColumn(Students, "System.String", "StudentCity"); // adding rows AddNewRow(Students, 1, "M H Kabir", "Kolkata"); AddNewRow(Students, 1, "Shreya Sharma", "Delhi"); AddNewRow(Students, 1, "Rini Mukherjee", "Hyderabad"); AddNewRow(Students, 1, "Sunil Dubey", "Bikaner"); AddNewRow(Students, 1, "Rajat Mishra", "Patna"); return Students; } private void AddNewColumn(DataTable table, string columnType, string columnName) { DataColumn column = table.Columns.Add(columnName, Type.GetType(columnType)); } //adding data into the table private void AddNewRow(DataTable table, int id, string name, string city) { DataRow newrow = table.NewRow(); newrow["StudentID"] = id; newrow["StudentName"] = name; newrow["StudentCity"] = city; table.Rows.Add(newrow); } } }
عند تنفيذ البرنامج ، لاحظ ما يلي:
ينشئ التطبيق أولاً مجموعة بيانات ويربطها مع عنصر تحكم عرض الشبكة باستخدام طريقة DataBind () لعنصر التحكم GridView.
الأسلوب Createdataset () هو دالة معرفة من قبل المستخدم ، والتي تقوم بإنشاء كائن DataSet جديد ثم استدعاء أسلوب معرف من قبل مستخدم آخر CreateStudentTable () لإنشاء الجدول وإضافته إلى مجموعة جداول مجموعة البيانات.
يستدعي الأسلوب CreateStudentTable () أساليب المعرفة من قبل المستخدم AddNewColumn () و AddNewRow () لإنشاء الأعمدة والصفوف من الجدول وكذلك لإضافة بيانات إلى الصفوف.
عند تنفيذ الصفحة ، تقوم بإرجاع صفوف الجدول كما هو موضح:
ينشئ التطبيق أولاً مجموعة بيانات ويربطها مع عنصر تحكم عرض الشبكة باستخدام طريقة DataBind () لعنصر التحكم GridView.
الأسلوب Createdataset () هو دالة معرفة من قبل المستخدم ، والتي تقوم بإنشاء كائن DataSet جديد ثم استدعاء أسلوب معرف من قبل مستخدم آخر CreateStudentTable () لإنشاء الجدول وإضافته إلى مجموعة جداول مجموعة البيانات.
يستدعي الأسلوب CreateStudentTable () أساليب المعرفة من قبل المستخدم AddNewColumn () و AddNewRow () لإنشاء الأعمدة والصفوف من الجدول وكذلك لإضافة بيانات إلى الصفوف.
عند تنفيذ الصفحة ، تقوم بإرجاع صفوف الجدول كما هو موضح:
التسميات: ASP.NET برمجة صفحات الويب
<< الصفحة الرئيسية