Generator EDM (EdmGen.exe)
EdmGen.exe adalah alat baris perintah yang digunakan untuk bekerja dengan model Entity Framework dan memetakan file. Anda dapat menggunakan alat EdmGen.exe untuk melakukan hal berikut:
Koneksi ke sumber data dengan menggunakan penyedia data .NET Framework khusus sumber data, dan menghasilkan file model konseptual (.csdl), model penyimpanan (.ssdl), dan pemetaan (.msl) yang digunakan oleh Kerangka Kerja Entitas. Untuk informasi selengkapnya, lihat Cara: Menggunakan EdmGen.exe untuk Menghasilkan Model dan Memetakan File.
Memvalidasi model yang sudah ada. Untuk informasi selengkapnya, lihat Cara: Menggunakan EdmGen.exe untuk Memvalidasi File Model dan Pemetaan.
Buat file kode C# atau Visual Basic yang berisi kelas objek yang dihasilkan dari file model konseptual (.csdl). Untuk informasi selengkapnya, lihat Cara: Menggunakan EdmGen.exe untuk Membuat Kode Lapisan Objek .
Buat file kode C# atau Visual Basic yang berisi tampilan yang telah dibuat sebelumnya untuk model yang ada. Untuk informasi selengkapnya, Cara: Tampilan Pra-Hasil untuk Meningkatkan Performa Kueri.
Alat EdmGen.exe diinstal di direktori .NET Framework. Dalam banyak kasus, ini terletak di C:\windows\Microsoft.NET\Framework\v4.0. Untuk sistem 64-bit, ini terletak di C:\windows\Microsoft.NET\Framework64\v4.0. Anda juga dapat mengakses alat EdmGen.exe dari perintah Visual Studio (Klik Mulai, arahkan ke Semua Program, arahkan ke Microsoft Visual Studio 2010, arahkan ke Alat Visual Studio, lalu klik Visual Studio 2010 Command Prompt).
Sintaks
EdmGen /mode:choice [options]
Mode
Saat menggunakan alat EdmGen.exe, Anda harus menentukan salah satu mode berikut.
Mode | Deskripsi |
---|---|
/mode:ValidateArtifacts |
Memvalidasi file .csdl, .ssdl, dan .msl dan menampilkan kesalahan atau peringatan apa pun. Opsi ini memerlukan setidaknya satu dari argumen /inssdl atau /incsdl . Jika /inmsl ditentukan, argumen /inssdl dan /incsdl juga diperlukan. |
/mode:FullGeneration |
Menggunakan informasi koneksi database yang ditentukan dalam opsi /connectionstring dan menghasilkan file .csdl, .ssdl, .msl, lapisan objek, dan tampilan.Opsi ini memerlukan argumen /connectionstring dan argumen /project atau argumen /outssdl , /outcsdl , /outmsdl , /outobjectlayer , /outviews , /namespace , dan /entitycontainer . |
/mode:FromSSDLGeneration |
Menghasilkan file .csdl dan .msl, kode sumber, dan tampilan dari file .ssdl yang ditentukan. Opsi ini memerlukan argumen dan /project argumen atau /outcsdl argumen , , /outobjectlayer /outmsl , /outviews , /namespace , dan /entitycontainer ./inssdl |
/mode:EntityClassGeneration |
Membuat file kode sumber yang berisi kelas yang dihasilkan dari file .csdl. Opsi ini memerlukan argumen /incsdl dan argumen /project atau argumen /outobjectlayer . Argumen /language bersifat opsional. |
/mode:ViewGeneration |
Membuat file kode sumber yang berisi tampilan yang dihasilkan dari file .csdl, .ssdl, dan .msl. Opsi ini memerlukan /inssdl argumen , , /incsdl /inmsl , dan /project atau /outviews . Argumen /language bersifat opsional. |
Opsi
Opsi | Deskripsi |
---|---|
/p[roject]: <tali> |
Menentukan nama proyek yang akan digunakan. Nama proyek digunakan sebagai default untuk pengaturan namespace layanan, nama model dan file pemetaan, nama file sumber objek, dan nama file sumber pembuatan tampilan. Nama kontainer entitas diatur ke <konteks proyek>. |
/prov[ider]: <tali> |
Nama penyedia data .NET Framework yang akan digunakan untuk menghasilkan file model penyimpanan (.ssdl). Penyedia default adalah Penyedia Data .NET Framework untuk SQL Server (System.Data.SqlClient). |
/c[onnectionstring]: <string koneksi> |
Menentukan string yang digunakan untuk menyambungkan ke sumber data. |
/incsdl: <file> |
Menentukan file .csdl atau direktori tempat file .csdl berada. Argumen ini dapat ditentukan beberapa kali sehingga Anda dapat menentukan beberapa direktori atau file .csdl. Menentukan beberapa direktori dapat berguna untuk menghasilkan kelas (/mode:EntityClassGeneration ) atau tampilan (/mode:ViewGeneration ) ketika model konseptual dibagi di beberapa file. Ini juga dapat berguna ketika Anda ingin memvalidasi beberapa model (/mode:ValidateArtifacts ). |
/refcsdl: <file> |
Menentukan file atau file .csdl tambahan yang digunakan untuk menyelesaikan referensi apa pun dalam file .csdl sumber. (File .csdl sumber adalah, file yang ditentukan oleh opsi /incsdl ). File /refcsdl berisi jenis yang bergantung pada file .csdl sumber. Argumen ini dapat ditentukan beberapa kali. |
/inmsl: <file> |
Menentukan file .msl atau direktori tempat file .msl berada. Argumen ini dapat ditentukan beberapa kali sehingga Anda dapat menentukan beberapa direktori atau file .msl. Menentukan beberapa direktori dapat berguna untuk menghasilkan tampilan (/mode:ViewGeneration ) ketika model konseptual dibagi di beberapa file. Ini juga dapat berguna ketika Anda ingin memvalidasi beberapa model (/mode:ValidateArtifacts ). |
/inssdl: <file> |
Menentukan file .ssdl atau direktori tempat file .ssdl berada. Argumen ini dapat ditentukan beberapa kali sehingga Anda dapat menentukan beberapa direktori atau file .ssdl. Ini dapat berguna ketika Anda ingin memvalidasi beberapa model (/mode:ValidateArtifacts) . |
/outcsdl: <file> |
Menentukan nama file .csdl yang akan dibuat. |
/outmsl: <file> |
Menentukan nama file .msl yang akan dibuat. |
/outssdl: <file> |
Menentukan nama file .ssdl yang akan dibuat. |
/outobjectlayer: <file> |
Menentukan nama file kode sumber yang berisi objek yang dihasilkan dari file .csdl. |
/outviews: <file> |
Menentukan nama file kode sumber yang berisi tampilan yang dihasilkan. |
/language: [VB|CSharp] |
Menentukan bahasa untuk file kode sumber yang dihasilkan. Bahasa default ke C#. |
/namespace: <tali> |
Menentukan namespace layanan model yang akan digunakan. Namespace layanan disetel dalam file .csdl saat menjalankan /mode:FullGeneration atau /mode:FromSSDLGeneration . Namespace layanan tidak digunakan saat menjalankan /mode:EntityClassGeneration . |
/entitycontainer: <tali> |
Menentukan nama yang akan diterapkan ke elemen <EntityContainer> dalam model yang dihasilkan dan file pemetaan. |
/pl[uralize] |
Menerapkan aturan bahasa Inggris untuk tunggal dan jamak ke nama Entity , EntitySet , dan NavigationProperty dalam model konseptual. Opsi ini akan melakukan tindakan berikut:- Jadikan semua nama EntityType menjadi tunggal.- Jadikan semua nama EntitySet jamak.- Untuk setiap NavigationProperty yang mengembalikan paling banyak satu entitas, buat nama menjadi tunggal.- Untuk setiap NavigationProperty yang mengembalikan lebih dari satu entitas, buatlah namanya menjadi jamak. |
/SuppressForeignKeyProperties or /nofk |
Mencegah kolom kunci asing diekspos sebagai properti skalar pada tipe entitas dalam model konseptual. |
/help atau ? |
Menampilkan sintaks perintah dan opsi untuk alat ini. |
/nologo |
Menekan pesan hak cipta agar tidak ditampilkan. |
/targetversion: <tali> |
Versi .NET Framework yang akan digunakan untuk mengkompilasi kode yang dihasilkan. Versi yang didukung adalah 4 dan 4.5. Default ke 4. |
Di Bagian Ini
Cara: Menggunakan EdmGen.exe untuk Menghasilkan Model dan Memetakan File
Cara: Menggunakan EdmGen.exe untuk Menghasilkan Kode Lapisan Objek
Cara: Menggunakan EdmGen.exe untuk Memvalidasi Model dan Memetakan File