Melakukan CRUD Lebih Mudah dengan Entity Framework Core
28 September 2022
•
11 menit baca
•
2 pembaca

Belajar memanfaatkan EF Core agar operasi data terasa jauh lebih rapi dibanding menulis SQL manual untuk setiap langkah.
Sekilas tentang ORM
Object-Relational Mapper atau ORM adalah jembatan antara objek di kode kita dan tabel di basis data. Daripada menulis kueri SQL secara manual untuk setiap operasi, kita bekerja lewat model dan biarkan framework menerjemahkannya.
Keuntungan terbesarnya adalah konsistensi. Akses data menjadi lebih mudah dibaca, lebih sedikit boilerplate, dan lebih cepat dikembangkan, terutama untuk operasi CRUD yang berulang.
Komponen inti Entity Framework Core
Di EF Core, hampir semuanya berpusat pada model. Model tersebut tersusun dari dua komponen utama: entity class dan context class. Entity mewakili tabel, sedangkan DbContext menjadi pintu masuk untuk query, tracking perubahan, dan penyimpanan data.
Pendekatan ini terasa natural bagi developer .NET karena kita bekerja dengan object C# dan tetap bisa memanfaatkan provider berbeda seperti SQL Server, PostgreSQL, MySQL, atau SQLite.
C#
public class User{public int Id { get; set; }public string Name { get; set; } = default!;public string? EmailAddress { get; set; }public string? PhoneNumber { get; set; }public DateTimeOffset Created { get; set; }}public class UserApplicationContext : DbContext{public DbSet<User> Users { get; set; } = null!;protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder){optionsBuilder.UseSqlServer("Data Source=(localdb)\\MSSQLLocalDB;Database=UserApplication;");}}
Catatan: Entity mendeskripsikan bentuk data, sedangkan context mendeskripsikan cara kita berbicara dengan database.
Kenapa code-first terasa nyaman
Pada pendekatan code-first, kita mendesain domain class lebih dulu lalu membiarkan EF Core menghasilkan skema database melalui migration. Workflow ini cocok saat struktur aplikasi masih berkembang dan kita ingin perubahan skema tetap terlacak.
Setelah entity dan context siap, migration menjadi cara yang aman untuk membawa perubahan model ke database. Bukan cuma bikin tabel, tapi juga menjadi dokumentasi evolusi skema project.
- Buat model dan context.
- Tambahkan migration lewat tools EF Core.
- Update database agar struktur tabel mengikuti model yang baru.
Mencoba CRUD pada entitas User
Setelah fondasinya siap, operasi CRUD terasa sangat lugas. Kita cukup membuat object baru untuk insert, mengakses context.Users untuk read, memodifikasi entity yang ditemukan untuk update, lalu menghapus object yang sudah dilacak untuk delete.
Nilai dari EF Core benar-benar terasa di sini: kode bisnis tetap dominan, sementara detail SQL berada di balik layar.
C#
using var context = new UserApplicationContext();context.Users.Add(new User{Name = "Johnathan",EmailAddress = "john@email.com",PhoneNumber = "082121212112",Created = DateTimeOffset.Now});var users = context.Users.ToList();var user = context.Users.FirstOrDefault(item => item.Name == "Johnathan");if (user is not null){user.Name = "Finn";}context.SaveChanges();
Catatan: Alur create, read, update, lalu SaveChanges adalah inti workflow EF Core untuk studi kasus sederhana.
Berpindah provider tanpa mengubah alur berpikir
Salah satu poin menyenangkan dari EF Core adalah kemudahan saat ingin mencoba layanan basis data lain. Pada artikel aslinya, alur yang sama dipindahkan dari SQL Server ke SQLite hanya dengan mengganti package provider dan menyesuaikan konfigurasi koneksi.
Ini menunjukkan bahwa abstraction yang baik bukan cuma membuat kode lebih singkat, tetapi juga memberi fleksibilitas ketika kebutuhan project berubah.
Simpulan
EF Core membantu developer fokus pada model dan perilaku aplikasi, bukan tenggelam dalam pengulangan SQL. Untuk project .NET yang butuh produktivitas sekaligus struktur yang tetap rapi, ini adalah pondasi yang sangat kuat.
Kalau baru memulai, bangun dulu satu studi kasus kecil seperti entitas User. Dari situ pola EF Core biasanya cepat terasa masuk akal.
Baca juga
Artikel lain
22 Mei 2026
•
10 menit baca
Catatan Pengantar Filsafat 2: Filsafat, Agama, dan Kehidupan (Prof. Bambang Sugiharto)
Artikel ini merupakan catatan dan refleksi dari Kuliah Pengantar Filsafat seri kedua bersama Prof. Bambang Sugiharto.
Artikel lain

7 Agustus 2026
•
40 menit baca
Memahami C# Event: Konsep, Cara Kerja, EventHandler, dan Observer Pattern
Event merupakan salah satu fitur paling penting di C#, tetapi sering kali hanya dipelajari sebatas cara menulis += dan Invoke(). Padahal, di balik sintaks yang sederhana, Event menyelesaikan masalah komunikasi antar object dengan menerapkan prinsip loosely coupled dan mengimplementasikan Observer Design Pattern. Artikel ini membahas Event secara bertahap, mulai dari konsep dasar, hubungan dengan Delegate, Publisher dan Subscriber, penggunaan EventHandler serta EventArgs, hingga studi kasus nyata, best practices, dan kesalahan yang sering ditemui dalam pengembangan aplikasi .NET.