Bagikan melalui


Pemetaan Jenis Kustom SQL-CLR

Pemetaan jenis antara SQL Server dan runtime bahasa umum (CLR) secara otomatis ditentukan saat Anda menggunakan alat baris perintah SQLMetal, Object Relational Designer (O/R Designer).

Ketika tidak ada pemetaan yang disesuaikan yang dilakukan, alat-alat ini menetapkan pemetaan jenis default seperti yang dijelaskan dalam Pemetaan Jenis SQL-CLR. Jika Anda ingin mengetik pemetaan secara berbeda dari default ini, Anda perlu melakukan beberapa penyesuaian pemetaan jenis.

Saat menyesuaikan pemetaan jenis, pendekatan yang disarankan adalah membuat perubahan dalam file DBML perantara. Kemudian, file DBML yang disesuaikan harus digunakan saat Anda membuat kode dan memetakan file dengan SQLMetal atau O/R Designer.

Setelah Anda membuat instans objek DataContext dari kode dan memetakan file, metode DataContext.CreateDatabase membuat database berdasarkan pemetaan jenis yang ditentukan. Jika tidak ada atribut CLR type yang ditentukan dalam pemetaan, pemetaan jenis default akan digunakan.

Kustomisasi dengan SQLMetal atau O/R Designer

Dengan SQLMetal dan O/R Designer, Anda dapat secara otomatis membuat model objek yang menyertakan informasi pemetaan jenis di dalam atau di luar file kode. Karena file-file ini ditimpa oleh SQLMetal atau O/R Designer, setiap kali Anda membuat ulang pemetaan Anda, pendekatan yang disarankan untuk menentukan pemetaan jenis kustom adalah menyesuaikan file DBML.

Untuk menyesuaikan pemetaan jenis dengan SQLMetal atau O/R Designer, pertama-tama buat file DBML. Kemudian, sebelum membuat file kode atau file pemetaan, ubah file DBML untuk mengidentifikasi pemetaan jenis yang diinginkan. Dengan SQLMetal, Anda harus mengubah atribut Type dan DbType secara manual dalam file DBML untuk membuat kustomisasi pemetaan jenis Anda. Dengan O/R Designer, Anda dapat membuat perubahan dalam Perancang. Untuk informasi selengkapnya tentang Object Relational Designer, lihat Alat LINQ ke SQL di Visual Studio.

Catatan

Beberapa pemetaan jenis dapat mengakibatkan pengecualian luapan atau kehilangan data saat menerjemahkan ke atau dari database. Tinjau Matriks Perilaku Run-time Pemetaan Jenis dengan cermat di Pemetaan Jenis SQL-CLR sebelum membuat penyesuaian apa pun.

Agar kustomisasi pemetaan jenis Anda dikenali oleh SQLMetal atau O/R Designer, Anda perlu memastikan bahwa alat ini disediakan dengan jalur ke file DBML kustom Anda saat Anda membuat file kode atau file pemetaan eksternal. Meskipun tidak diperlukan untuk kustomisasi pemetaan jenis, disarankan agar Anda selalu memisahkan informasi pemetaan jenis dari file kode Anda dan menghasilkan file pemetaan jenis eksternal tambahan. Melakukannya akan meninggalkan beberapa fleksibilitas dengan tidak mengharuskan file kode dikompilasi ulang.

Menggabungkan Perubahan Database

Ketika database Anda berubah, Anda harus memperbarui file DBML Anda untuk mencerminkan perubahan tersebut. Salah satu cara untuk melakukan ini adalah dengan secara otomatis membuat file DBML baru dan kemudian melakukan kembali kustomisasi pemetaan jenis Anda. Atau, Anda dapat membandingkan perbedaan antara file DBML baru dan file DBML yang disesuaikan dan memperbarui file DBML kustom Anda secara manual untuk mencerminkan perubahan database.

Lihat juga