Bagikan melalui


Mengonfigurasi pewarisan dengan menggunakan Perancang O/R

Object Relational Designer (O/R Designer) mendukung konsep warisan tabel tunggal seperti yang sering diterapkan dalam sistem relasional. Dalam warisan tabel tunggal, ada tabel database tunggal yang memuat kolom untuk informasi induk dan informasi turunan. Dengan data relasional, kolom diskriminator memuat nilai yang menentukan kelas yang dimiliki rekaman tertentu.

Contohnya, pertimbangkan tabel Persons yang memuat semua orang yang dipekerjakan oleh perusahaan. Beberapa orang adalah karyawan dan beberapa orang adalah manajer. Tabel Persons memuat kolom bernama EmployeeType yang memiliki nilai 1 untuk manajer dan nilai 2 untuk karyawan; ini adalah kolom diskriminator. Dalam skenario ini, Anda dapat membuat subkelas karyawan dan mengisi kelas hanya dengan rekaman yang memiliki nilai EmployeeType dari 2. Anda juga dapat menghapus kolom yang tidak berlaku dari setiap kelas.

Membuat model objek yang menggunakan warisan (dan sesuai dengan data relasional) bisa sedikit membingungkan. Prosedur berikut menguraikan langkah-langkah yang diperlukan untuk mengonfigurasi warisan dengan O/R Designer. Mengikuti langkah-langkah umum tanpa merujuk ke tabel dan kolom yang ada mungkin sulit, sehingga panduan yang menggunakan data disediakan. Untuk arahan langkah demi langkah terperinci untuk mengonfigurasi warisan dengan menggunakan O/R Designer, lihat Panduan: Membuat kelas LINQ ke SQL dengan menggunakan warisan tabel tunggal (O/R Designer).

Membuat kelas data yang diwariskan

  1. Buka O/R Designer dengan menambahkan item Kelas LINQ ke SQL ke proyek Visual Basic atau C# yang ada.

  2. Seret tabel yang ingin Anda gunakan sebagai kelas dasar ke O/R Designer.

  3. Seret salinan kedua tabel ke O/R Designer dan ganti namanya. Ini adalah kelas turunan, atau subkelas.

  4. Klik Warisan di tab Desainer Hubungan Objek dari Kotak Alat, lalu pilih subkelas (tabel yang Anda ganti namanya) dan sambungkan ke kelas dasar.

    Catatan

    Klik item Warisan di Kotak Alat dan lepaskan tombol mouse, klik salinan kedua kelas yang Anda buat di langkah 3, lalu pilih kelas pertama yang Anda buat di langkah 2. Panah pada garis warisan menunjuk ke kelas pertama.

  5. Di setiap kelas, hapus properti objek apa pun yang tidak ingin Anda munculkan dan yang tidak digunakan untuk asosiasi. Anda menerima kesalahan jika Anda mencoba menghapus properti objek yang digunakan untuk asosiasi: The property <property name> cannot be deleted because it is participating in the association <association name>.

    Catatan

    Karena kelas turunan mewarisi properti yang ditentukan dalam kelas dasarnya, kolom yang sama tidak dapat ditentukan di setiap kelas. (Kolom diterapkan sebagai properti.) Anda dapat mengaktifkan pembuatan kolom di kelas turunan dengan mengatur pengubah warisan pada properti di kelas dasar. Untuk mendapatkan informasi selengkapnya, lihat Dasar warisan (Visual Basic).

  6. Pilih baris warisan di O/R Designer.

  7. Di jendela Properti, atur Properti Diskriminator ke nama kolom yang membedakan rekaman di kelas Anda.

  8. Atur properti Nilai Diskriminator Kelas Turunan ke nilai dalam database yang menunjuk rekaman sebagai jenis yang diwariskan. (Ini adalah nilai yang disimpan di kolom diskriminator dan digunakan untuk menunjuk kelas yang diwariskan.)

  9. Atur properti Nilai Diskriminator Kelas Dasar ke nilai yang menunjuk rekaman sebagai jenis dasar. (Ini adalah nilai yang disimpan di kolom diskriminator dan digunakan untuk menunjuk kelas dasar.)

  10. Secara opsional, Anda juga dapat mengatur properti Default Warisan untuk menunjuk jenis dalam hierarki warisan yang digunakan ketika memuat baris yang tidak cocok dengan kode warisan yang ditentukan. Dengan kata lain, jika rekaman memiliki nilai di kolom diskriminator yang tidak cocok dengan nilai di properti Nilai Diskriminator Kelas Turunan atau Nilai Diskriminator Kelas Dasar, rekaman dimuat ke dalam jenis yang ditetapkan sebagai Default Warisan.