ASP.NET (MVC) — Implementasi Entity Framework Code-First dan Migrations dengan Database SQL Server

Tri Firdyanto
4 min readNov 8, 2020

--

Source: Unsplash

Hallo semuanya, kali ini saya ingin membagikan pengetahuan saya mengenai Entity Framework, kususnya dengan metode Code-First. Sebelum lebih jauh, apasih Entity Framework itu? dan metode Code-First itu apa?

Entity Framework adalah sebuah ORM Open-Source yang dibuat oleh Microsoft. Nah, mengapa kita menggunakan metode Code-First ? Dari Entity Framework sendiri, sebetulnya dia mempunyai 3 cara atau metode, yaitu Database-First, Code-First, dan Model-First. Nah, Seperti namanya, Code-First ini merupakan cara kita membuat struktur database, tapi dengan kode kelas terlebih dahulu, kemudian secara automatis Entity Framework akan membuatkan table dari kelas yang telah kita buat dengan Kode kita. Masih bingung? yuk langsung aja kita praktek.

Hal yang pertama harus kita lakukan adalah membuat project dengan Visual Studio kita, dan buatlah project ASP.NET, kemudian kita pilih juga MVC sebagai templatenya.

Jika sudah, hal selanjutnya adalah dengan menginstall Entity Framework lewat Nuget Package Manager, caranya di link berikut ini: Install Entity Framework

Saat instalasi berhasil, buatlah kelas baru di dalam folder model untuk membuat table yang akan kita gunakan di Database kita nanti, sebagai contoh saya membuat 3 model seperti ini

Model Penjualan
Model Produk
Model Customer

Kemudian, kita perlu membuat context nya, buatlah kelas baru di folder model, beri nama sesuai keinginan anda, di sini saya beri nama MainDbContext, lalu isikan kode seperti di bawah ini:

Kelas Context

Kelas Context ini sangat penting, karna kelas inilah yang akan membuat table di database kita nanti, makanya kita menuliskan fungsi DbSet<Object> untuk membuat table sesuai dengan kelas model yang kita buat sebelumnya.

Jika sudah, maka kita harus membuat koneksi string pada file Web.Config yang ada pada tab Solution Explorer kita, tambahkan kode di bawah ini di antara tag <configuration></configuration>

<connectionStrings>   <add name="Your_Context_Class" connectionString="Server=localhost; Database=Nama_Database; User ID=Your_Username; Password=Your_Password; Trusted_Connection=False" providerName="System.Data.SqlClient"/></connectionStrings>

Langkah selanjutnya adalah, kita harus mengaktifkan Migration, dengan cara membuka Package Manager Console lalu ketikan perintah ini untuk mengaktifkan migration: Enable-Migrations

Jika berhasil maka akan ada folder baru bernama Migrations dan ada file bernama Configuration.cs , Anda bisa menambahkan Seed Data pada fungsi Seed.

Kemudian lanjut ketikan perintah “Add-Migration nama_migration”, nama_migration bisa anda ubah sesuai dengan yang diinginkan, nanti akan muncul file seperti gambar di bawah, dan buka file tersebut, lalu custom sesuai keinginan anda, di situ pembuatan, edit atau hapus struktur dari table dibuat.

File Generated Migrations

Karna sebelumnya kita sudah membuat model dari table yang akan kita buat, maka seharusnya di dalam file tersebut sudah ada kode untuk membuat table kita, yang berada di fungsi Up, kode yang automatis terbuat kurang lebih seperti ini:

Sebagian Kode dari file migrations

Dengan begitu, kini kita bisa mengaplikasikan kode kita dan membuat table secara automatis tanpa membuatnya secara manual dengan Database Manager kita, caranya dengan membuka kembali Package Manager Console dan mengetikan perintah berikut: Update-Database

Jika tidak terdapat pesan error, maka anda bisa melihat hasil dari table yang telah kita buat menggunakan teknik Code-First pada Entity Framework dengan membuka SQL Server Management Studio atau aplikasi lain untuk me-manage sebuah database SQL Server.

Table yang sudah terbuat

Selamat, anda telah meng-implementasikan Entity Framework dengan metode Code-First dan membuat migrations.

Semoga tulisan ini bermanfaat, apabila ada kesalahan mohon untuk dimaafkan, kritik dan saran sangat dibutuhkan. Terima kasih telah membaca.

--

--