Merhabalar bu yazı ile .net core projelerinize veri tabanı bağlantısını nasıl yapacağınızı basit ve sade bir şekilde anlattım umarım işinize yarar.
Takip edeceğimiz adımlar:
- Veri Tabanı Oluşturma
- Gerekli Paketleri Ekleme
- Context Dosyasının Oluşturulması
- Veri Tabanı Bağlantı Stringi
- Bağlantıyı Yapılandırma
1. Veri Tabanı Oluşturma
MSSQL üzerinde projeniz için bir veri tabanı oluşturun. Bunu MSSQL’i yönettiğiniz (MSSQL Management Studio, Azure Desktop vb.) herhangi bir uygulama ile yapabilirsiniz.
Database oluşturmak için Query:
CREATE DATABASE veriTabaniAdiniz;
2. Gerekli Paketleri Ekleme
NuGet paket yöneticisi veya terminal yardımı ile projenize Entity Framework Core‘u dahil etmemiz gerekiyor.
Entitiy Framework Core Nedir?
Entity Framework Core, ORM(object relational mapping) aracıdır. Veritabanı ile OOP arasındaki bağlantıyı sağlar. Karmaşık uzun SQL sorgularından kurtulur ve SQL sorgusu yazmadan program içerisindeki kodlar ile SQL üzerinde CRUD işlemleri yapabilirsiniz.
NuGet Paket Yöneticisi ile
NuGet Paket Yöneticisine kullandığınız IDE’ye göre farklı yollarla ulaşabilirsiniz.
Ben aktif olarak kullandığım Jet Brains’in Rider IDE’si üzerinden göstereceğim. Sol altta bulunan ikonlardan görselde mavi renk ile görünen ikon NuGet paket yöneticimiz.

Burada arama kısmına paket isimlerini tek tek yazıyoruz ve sürüm olarak Preview(Önizleme) sürümler dışındaki en son sürümü seçip paketleri kuruyoruz.
Yüklenmesi gereken paketler:
Microsoft.EntityFrameworkCore.sqlserver
Microsoft.EntityFrameworkCore.Design
Microsoft.EntityFrameworkCore.Tools
Terminal ile
dotnet add package Microsoft.EntityFrameworkCore.sqlserver
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet add package Microsoft.EntityFrameworkCore.Tools
3. Context Dosyasının Oluşturulması
Veri tabanı işlemlerinin yapıldığı dosyaya Context denilmektedir. Projemizde veri tabanı işlemlerini yapmak için bir context dosyası oluşturacağız ve bu context dosyası DbContext sınıfından miras alacak. Bu sayede bu class üzerinden veri tabanı işlemlerimizi yapacağız.
Projemizin içerisine Data adında bir klasör açıyoruz. Burada klasörümüze sağ tıklayıp “New File” veya Class diyerek yeni dosya oluşturuyoruz. Dosya adına AppDbContext.cs yazıyoruz İsterseniz Models klasörü altında da dosyamızı oluşturabilirsiniz.
Dosyamızın içerisine ise bu kodları yazacağız. (Data klasörünün altında oluşturduysanız proje adınızdan sonra “.Data” eklemeniz gerekiyor. Dosya adı olarak AppDbContext belirlemiştik. Farklı isim belirlediyseniz kod içerisinde düzeltmenizi yapın. Proje adınızı da değiştirmeyi unutmayın.
using Microsoft.EntityFrameworkCore;
namespace ProjeAdi.Data
{
public class AppDbContext : DbContext
{
public AppDbContext(DbContextOptions<AppDbContext> options) : base(options)
{
}
}
}
4. Veri Tabanı Bağlantı Stringi
MSSQL’ e bağlanmak için bir connection stringe ihtiyacınız var. Bu bağlantı stringi için buradan yardım alabilirsiniz.
Projemizdeki appsettings.json dosyasına bağlantı stringimizi { parantezinden hemen sonra şu şekilde ekliyoruz. Burada SqlCon daha sonra program.cs de belirteceğimiz isim olacak istediğiniz isimlendirmeyi yapabilirsiniz.
Benim bağlantı stringim “Server=localhost;Database=VeriTabaniAdi;Integrated Security=false;Encrypt=false;TrustServerCertificate=false;User Id=sa;Password=1234;”
"ConnectionStrings": {
"SqlCon": "Server=localhost;Database=VeriTabaniAdi;Integrated Security=false;Encrypt=false;TrustServerCertificate=false;User Id=sa;Password=1234;"
},
5.Bağlantıyı Yapılandırma
SQL bağlantısını proje başlangıcında sağlamak için projemizde bulunan program.cs dosyasında “var builder = …” satırının altına bu kodu ekliyoruz. Bu kod da yer alan SqlCon bir önceki adım da eklediğimiz stringin adını temsil ediyor. Eğer ismi değiştirdiyseniz sizde ona göre burada değiştirmelisiniz. Aynı şekilde AppDbContext dosyasında farklı bir isim kullandıysanız onu da yine değiştirmeniz gerekiyor.
Bu kod EntityFrameWorkCore ile veri tabanı bağlantısını oluşturmamızı sağlıyor.
builder.Services.AddDbContext<AppDbContext>(options => options.UseSqlServer(builder.Configuration.GetConnectionString("SqlCon")));
Projemiz artık MSSQL’e sorunsuz bir şekilde bağlanabilir. Bu bağlantıyı ve EF Core’u kullanarak CRUD (Create, read, update, delete) işlemlerini yapabilirsiniz.