ADO.NET menyediakan jembatan antara kontrol front-end dan database back-end. Objek ADO.NET merangkum semua operasi akses data dan kontrol yang berinteraksi dengan objek tampilan data. Detail pergerakan data disembunyikan.
Diagram berikut menunjukkan objek ADO.NET secara keseluruhan:
Kumpulan data mewakili subset dari database. Itu tidak memiliki koneksi persisten ke database. Koneksi ulang diperlukan untuk meng-upgrade database. DataSet mencakup objek DataTable dan DataRelation. Objek DataRelation mewakili hubungan antara dua tabel.
Tabel berikut adalah beberapa properti penting dari kelas DataSet:
milik | menggambarkan |
---|---|
Peka Huruf Besar-kecil | Menunjukkan apakah string yang akan dibandingkan dengan tabel data peka huruf besar-kecil. |
Wadah | Dapatkan ruang untuk komponen. |
Nama Kumpulan Data | Mendapatkan atau menetapkan nama kumpulan data yang ada. |
Manajer Tampilan Default | Mengembalikan tampilan data dalam pengumpulan data. |
Mode Desain | Menunjukkan apakah komponen berada dalam mode desain. |
Menerapkan Batasan | Menunjukkan apakah pembatasan dipatuhi saat mencoba mengunggah file. |
Acara | Dapatkan daftar event handler yang terkait dengan komponen ini. |
Properti yang Diperluas | Mendapatkan kumpulan informasi pengguna khusus yang terkait dengan DataSet. |
Memiliki Kesalahan | Tunjukkan jika ada kesalahan. |
Diinisialisasi | Menunjukkan apakah DataSet diinisialisasi. |
Lokal | Mendapatkan atau menetapkan informasi yang digunakan untuk membandingkan string dengan tabel. |
Ruang nama | Mendapatkan atau menyetel namespace DataSet. |
Awalan | Mendapatkan atau menyetel awalan XML yang merupakan alias untuk namespace. |
Hubungan | Mengembalikan kumpulan objek DataRelation. |
Tabel | Mengembalikan koleksi objek DataTable. |
Tabel berikut mencantumkan beberapa metode penting dari kelas DataSet:
metode | menggambarkan |
---|---|
Terima Perubahan | Menerima semua perubahan karena memuat DataSet atau metode ini. |
MulaiInit | Mulai inisialisasi DataSet. Inisialisasi ini terjadi pada saat runtime. |
Jernih | Hapus data. |
Klon | Kloning struktur DataSet termasuk semua struktur, hubungan, dan batasan DataTable. Namun datanya tidak dikloning. |
Menyalin | Salin data dan struktur. |
BuatDataReader() | Mengembalikan DataTableReader dengan kumpulan hasil untuk setiap DataTable, dalam urutan yang sama dengan munculnya tabel dalam kumpulan Tabel. |
BuatDataReader(DataTable[]) | Mengembalikan DataTableReader dengan satu kumpulan hasil untuk setiap DataTable. |
AkhirInit | Mengakhiri inisialisasi DataSet yang digunakan pada formulir atau digunakan oleh komponen lain. Inisialisasi terjadi pada saat runtime. |
Sama dengan (Objek) | Menentukan apakah objek yang ditentukan sama dengan objek saat ini. |
Menyelesaikan | Lepaskan sumber daya untuk melakukan pembersihan tambahan. |
Dapatkan Perubahan | Mendapatkan salinan DataSet yang berisi semua perubahan pada DataSet sejak dimuat atau sejak terakhir kali AcceptChanges dipanggil. |
Dapatkan Perubahan (DataRowState) | Mendapatkan salinan Kumpulan Data yang difilter menurut DataRowState yang berisi semua perubahan pada kumpulan data sejak terakhir kali dimuat atau sejak AcceptChanges dipanggil. |
DapatkanDataSetSchema | Dapatkan salinan XmlSchemaSet untuk DataSet. |
DapatkanData Objek | Isi objek informasi berseri dengan data yang diperlukan untuk membuat serial DataSet. |
Dapatkan Tipe | Dapatkan Jenis instance saat ini. |
DapatkanXML | Mengembalikan representasi XML dari data yang disimpan dalam DataSet. |
Dapatkan XMLSchema | Mengembalikan skema XML representasi XML data yang disimpan dalam DataSet. |
Telah Berubah() | Mendapat nilai yang menunjukkan apakah DataSet telah berubah, termasuk baris baru, baris yang dihapus, atau baris yang diubah. |
HasChanges(DataRowState) | Mendapatkan nilai yang menunjukkan apakah DataSet memiliki perubahan yang difilter DataRowState, termasuk baris baru, baris yang dihapus, atau baris yang diubah. |
AdalahBinarySerialized | Periksa format representasi serial DataSet. |
Muat(IDataReader, LoadOption, DataTable[]) | Gunakan IDataReader yang disediakan untuk mengisi DataSet dengan nilai dari sumber data, sambil menggunakan array instance DataTable untuk menyediakan informasi skema dan namespace. |
Muat(IDataReader, LoadOption, String[]) | Isi DataSet dengan nilai dari sumber data menggunakan IDataReader yang disediakan dan gunakan array string untuk memberikan nama tabel di DataSet. |
Menggabungkan() | Menggabungkan array tertentu dari objek DataSet, DataTable, atau DataRow ke dalam DataSet atau DataTable saat ini. Ada kelebihan yang berbeda dari metode ini. |
BacaXML() | Baca skema XML dan data ke dalam DataSet. Ada kelebihan yang berbeda dari metode ini. |
Baca Skema XML (0) | Baca skema XML ke dalam DataSet. Ada kelebihan yang berbeda dari metode ini. |
Tolak Perubahan | Kembalikan semua perubahan yang dilakukan pada DataSet sejak dibuat atau sejak terakhir kali DataSet.AcceptChanges dipanggil. |
TulisXML() | Tulis data dan skema XML dari DataSet. Ada kelebihan yang berbeda dari metode ini. |
Tulis Skema XML() | Tulis skema XML dari DataSet. Ada kelebihan yang berbeda dari metode ini. |
Kelas DataTable mewakili tabel dalam database. Ia memiliki properti penting berikut: Sebagian besar properti bersifat read-only kecuali properti PrimaryKey:
milik | menggambarkan |
---|---|
Hubungan Anak | Mendapatkan kumpulan hubungan anak dari DataTable ini. |
Kolom | Mendapatkan koleksi kolom milik tabel ini. |
Kendala | Mendapatkan kumpulan batasan yang dikelola oleh tabel ini. |
Kumpulan Data | Dapatkan DataSet yang menjadi milik tabel ini. |
Tampilan Default | Mendapatkan tampilan kustom tabel yang mungkin menyertakan tampilan terfilter atau posisi kursor. |
Hubungan Orang Tua | Mendapatkan kumpulan hubungan induk dari DataTable ini. |
Kunci Utama | Mendapatkan atau menyetel larik kolom yang berfungsi sebagai kunci utama untuk tabel data. |
Baris | Mendapatkan koleksi baris milik tabel ini. |
Tabel berikut mencantumkan beberapa metode penting dari kelas DataTable:
metode | menggambarkan |
---|---|
Terima Perubahan | Mengkomit semua perubahan yang dilakukan pada DataSet ini sejak dimuat atau sejak AcceptChanges terakhir kali dipanggil. |
Jernih | Menghapus DataSet dari data apa pun dengan menghapus semua baris dari semua tabel. |
Dapatkan Perubahan | Mendapatkan salinan DataSet yang berisi semua perubahan pada DataSet sejak terakhir kali dimuat atau sejak AcceptChanges dipanggil. |
Dapatkan Kesalahan | Mendapatkan array objek DataRow yang mengandung kesalahan. |
Impor Baris | Salin DataRow ke DataTable, pertahankan pengaturan properti apa pun serta nilai awal dan saat ini. |
LoadDataRow | Temukan dan perbarui baris tertentu. Jika tidak ditemukan baris yang cocok, baris baru dibuat dengan nilai yang ditentukan. |
Menggabungkan | Menggabungkan array tertentu dari objek DataSet, DataTable, atau DataRow ke dalam DataSet atau DataTable saat ini. |
Baris Baru | Buat DataRow baru dengan skema yang sama seperti tabel. |
Tolak Perubahan | Kembalikan semua perubahan yang dilakukan pada tabel sejak tabel dimuat atau sejak AcceptChanges terakhir kali dipanggil. |
Mengatur ulang | Menghapus semua tabel dan menghapus semua hubungan, batasan eksternal, dan tabel dari DataSet. Subkelas harus mengesampingkan Reset untuk mengembalikan DataSet ke keadaan semula. |
Memilih | Mendapatkan array objek DataRow. |
Objek DataRow mewakili baris dalam tabel dan memiliki properti penting berikut:
milik | menggambarkan |
---|---|
Memiliki Kesalahan | Menunjukkan jika ada kesalahan. |
Barang | Dapatkan atau atur data yang disimpan di kolom tertentu. |
ItemArray | Dapatkan atau tetapkan semua nilai di baris ini. |
Meja | Kembalikan tabel induk. |
Tabel berikut mencantumkan metode penting kelas DataRow:
metode | menggambarkan |
---|---|
Terima Perubahan | Menerapkan semua perubahan sejak metode ini dipanggil. |
MulaiSunting | Mulai operasi pengeditan. |
BatalkanSunting | Batalkan operasi pengeditan. |
Menghapus | Hapus baris data. |
AkhirSunting | Akhiri operasi pengeditan. |
DapatkanChildRows | Dapatkan sub-baris dari baris ini. |
DapatkanParentRow | Dapatkan baris induk. |
Dapatkan ParentRows | Dapatkan baris induk dari DataRow. |
Tolak Perubahan | Kembalikan semua perubahan yang dilakukan setelah AcceptChanges dipanggil. |
Objek DataAdapter bertindak sebagai perantara antara objek DataSet dan database. Ini membantu DataSet untuk mendapatkan data dari beberapa database atau sumber data lainnya.
Objek DataReader adalah alternatif untuk menggabungkan DataSet dan DataAdapter. Objek ini menyediakan akses terarah ke catatan data dalam database. Objek ini hanya cocok untuk akses baca-saja, seperti mengisi daftar dan kemudian memutuskan sambungan.
Objek DbConnection mewakili koneksi ke sumber data. Koneksi ini dapat dibagikan antar objek perintah yang berbeda. Objek DbCommand mewakili perintah atau proses tersimpan yang dikirim ke database untuk mengambil atau memanipulasi data.
Sejauh ini, kami telah menggunakan tabel dan database dari komputer kami. Dalam hal ini, kita akan membuat tabel, menambahkan kolom, baris dan data, dan menampilkan tabel menggunakan kontrol GridView.
Kode file sumbernya adalah sebagai berikut:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="createdatabase._Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title> Untitled Page </title> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server"> </asp:GridView> </div> </form> </body></html>
Kode filenya adalah sebagai berikut:
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, "MH 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); } }}
Saat Anda menjalankan program, amati aspek-aspek berikut:
Program pertama-tama membuat kumpulan data lalu mengikatnya menggunakan metode DataBind() kontrol GridView.
Metode Createdataset() adalah fungsi yang ditentukan pengguna yang membuat objek DataSet baru dan memanggil metode CreateStudentTable() tambahan yang ditentukan pengguna untuk membuat tabel dan kemudian menambahkannya ke kumpulan tabel DataSet.
Metode CreateStudentTable() memanggil metode AddNewColumn() dan AddNewRow() yang ditentukan pengguna untuk membuat kolom dan baris tabel serta menambahkan data ke baris. Ketika halaman dieksekusi, ia mengembalikan baris tabel seperti yang ditunjukkan di bawah ini: