Bagikan melalui


Membuat Model

Model EF menyimpan detail tentang bagaimana properti dan kelas aplikasi dipetakan ke tabel dan kolom database. Ada dua cara utama untuk membuat model EF:

  • Menggunakan Kode Terlebih Dahulu: Pengembang menulis kode untuk menentukan model. EF menghasilkan model dan pemetaan saat runtime berdasarkan kelas entitas dan konfigurasi model tambahan yang ditentukan oleh pengembang.

  • Menggunakan Perancang EF: Pengembang menggambar kotak dan garis untuk menentukan model menggunakan Perancang EF. Model yang dihasilkan disimpan sebagai XML dalam file dengan ekstensi EDMX. Objek domain aplikasi biasanya dihasilkan secara otomatis dari model konseptual.

Alur kerja EF

Kedua pendekatan ini dapat digunakan untuk menargetkan database yang ada atau membuat database baru, sehingga menghasilkan 4 alur kerja berbeda. Cari tahu mana yang paling tepat untuk Anda:

Saya hanya ingin menulis kode... Saya ingin menggunakan perancang...
Saya sedang membuat database baru Gunakan Kode Terlebih Dahulu untuk menentukan model dalam kode, lalu buat database. Gunakan Model Terlebih Dahulu untuk menentukan model menggunakan kotak dan garis, lalu buat database.
Saya perlu mengakses database yang ada Gunakan Kode Terlebih Dahulu untuk membuat model berbasis kode yang memetakan ke database yang ada. Gunakan Database Terlebih Dahulu untuk membuat model garis dan kotak yang memetakan ke database yang ada.

Tonton video: Alur kerja EF apa yang seharusnya saya gunakan?

Video singkat ini menjelaskan perbedaannya, dan cara menemukan alur kerja yang tepat untuk Anda.

Disajikan Oleh: Rowan Miller

Which Workflow ThumbWMV | MP4 | WMV (ZIP)

Jika setelah menonton video, Anda masih tidak belum yakin apakah akan menggunakan Perancang EF atau Kode Terlebih Dahulu, pelajari keduanya!

Memeriksa operasi internal

Terlepas dari apakah Anda menggunakan Kode Terlebih Dahulu atau Perancang EF, model EF selalu memiliki beberapa komponen:

  • Jenis entitas atau objek domain aplikasi itu sendiri. Ini biasanya disebut sebagai lapisan objek

  • Model konseptual yang terdiri dari jenis dan hubungan entitas khusus domain, yang dijelaskan menggunakan Model Data Entitas. Lapisan ini sering disebut dengan huruf "C", untuk conceptual (konseptual).

  • Model penyimpanan yang merepresentasikan tabel, kolom, dan hubungan seperti yang ditentukan dalam database. Lapisan ini sering disebut dengan huruf "S", untuk storage (penyimpanan).

  • Pemetaan antara model konseptual dan skema database. Pemetaan ini biasanya disebut sebagai pemetaan "C-S".

Mesin pemetaan EF memanfaatkan pemetaan "C-S" untuk mengubah operasi terhadap entitas - seperti membuat, membaca, memperbarui, dan menghapus - menjadi operasi yang setara terhadap tabel dalam database.

Pemetaan antara model konseptual dan objek aplikasi biasanya disebut sebagai pemetaan "O-C". Dibandingkan dengan pemetaan "C-S", pemetaan "O-C" bersifat implisit dan satu-ke-satu: entitas, properti, dan hubungan yang ditentukan dalam model konseptual diperlukan untuk mencocokkan bentuk dan jenis objek .NET. Dari EF4 dan seterusnya, lapisan objek dapat terdiri dari objek sederhana dengan properti tanpa dependensi pada EF. Ini biasanya disebut sebagai Plain-Old CLR Objects (POCO), dan pemetaan jenis serta properti dilakukan berdasarkan konvensi pencocokan nama. Sebelumnya, di EF 3.5 terdapat pembatasan khusus untuk lapisan objek, seperti entitas yang harus berasal dari kelas EntityObject dan harus membawa atribut EF untuk mengimplementasikan pemetaan "O-C".