Veri Tabanı Yönetimi ile Güçlü Bir .NET Core Projesi Oluşturmak

Veri Tabanı Yönetimi ile Güçlü Bir .NET Core Projesi Oluşturmak

Veri tabanı yönetimi ile güçlü bir NET Core projesi oluşturmak için geliştiricilerimizin önerisi! Yüksek performanslı bir çözüm mü arıyorsunuz? Kapsamlı bir veri yönetimi ve NET Core teknolojisi uyumlu projelerle işlerinizi kolaylaştırın Detaylı bilgi için sitemizi ziyaret edin

Veri Tabanı Yönetimi ile Güçlü Bir .NET Core Projesi Oluşturmak

Merhaba! Bu makalede, .NET Core projelerinde veri tabanı yönetimi için kullanılabilecek farklı yöntemlerden bahsedeceğiz. Günümüzde, modern web uygulamalarında veri tabanı yönetimi oldukça önemli bir konudur ve bu işlemi doğru bir şekilde yapmak projenizin başarısı için hayati önem taşımaktadır. Bu nedenle, .NET Core projelerindeki veri tabanı yönetimi ile ilgili farklı seçenekleri ele alacağız.

Aşağıda, ORM (Object-Relational Mapping), Micro ORM ve ADO.NET gibi farklı seçenekleri incelerken, hangi yöntemi ne zaman kullanmanız gerektiği hakkında size ipuçları vereceğiz. Ayrıca, veri tabanı ilişkileri ve işlemleri hakkında da temel bilgiler sunacağız. Konuya hakim olan ve bu yöntemlerle ilgili detaylı bilgi edinmek isteyen okuyucularımız, yazımızı kaynak olarak kullanabilir ve işlemlerini daha kolay bir hale getirebilirler.


Veri Tabanı Yöntemleri

Veri tabanı yönetimi için kullanabileceğiniz üç farklı yöntem ORM, Micro ORM ve ADO.NET'tir.
Bunlar arasında hangi yöntemin ne zaman kullanılacağı konusunda ipuçları aşağıda sunulmuştur.

Yöntemler Avantajları Dezavantajları
ORM Kod yazımını azaltır, objelerle veri tabanı arasındaki bağlantıyı koparır Düşük performans, karmaşık SQL sorgularının oluşturulmasından kaynaklı performans kaybı
Micro ORM Daha yüksek performans, doğrudan sorgulara erişim imkanı sunar Kod yazım miktarı ORM'e göre daha fazla
ADO.NET Yüksek performans, tam kontrol imkanı Kod yazım miktarı diğerlerine göre daha fazla, performans anlamında en farklı seçenek

Uygun yöntemin seçimi projenin ihtiyacına göre değişecektir. Daha karmaşık sorgular kullanmanız gerekiyorsa ADO.NET kullanmak doğru olacaktır. Performans kaybıyla ilgilenmeden, daha az kod yazmak isteyenler buna karşılık ORM kullanabilirler.


ORM

ORM Nedir?

ORM, Object-Relational Mapping'in kısaltılmasıdır. Bu yöntem, veri tabanı işlemlerinin programlama dili objeleri aracılığıyla yapılmasıdır. Bu sayede programcıların SQL sorguları yazması gerekmemekte ve objeler aracılığıyla veri tabanı işlemleri gerçekleştirilmektedir.

Entity Framework Core Nedir?

Entity Framework Core (.NET Core'un bir parçasıdır) Microsoft tarafından geliştirilmiş ve .NET Core projelerinde kullanılan bir ORM'dir. Entity Framework Core, tıpkı diğer ORM'ler gibi programlama dili objeleri aracılığıyla veri tabanına erişim sağlar. Entity Framework Core, diğer ORM'ler gibi avantajları ve dezavantajları da beraberinde getirmektedir.

Avantajları:

  • Mükemmel bir veri modelleme desteği
  • Daha yüksek performanslı sorgular
  • Kodlama ve tasarım süreçlerinin hızlandırılması
  • Gerçek zamanlı sorgu desteği
  • Güçlü bir caching altyapısı

Dezavantajları:

  • Bazı durumlarda, SQL sorguları kadar performanslı olamayabilir
  • Veri tabanı değişikliklerinin uygulanması zor olabilir
  • Biraz daha fazla bellek kullanarak, daha yavaş bir performans gösterme olasılığı vardır.

Entity Framework Core, pek çok avantajı ve dezavantajı ile birlikte bizim .NET Core projelerimizde ORM yöntemi olarak kullanabileceğimiz güçlü bir seçenektir.


Code First Yaklaşımı

Code First Yaklaşımı Nedir?

Entity Framework Core ile veri tabanı yönetimi için kullanılabilecek bir yöntem olan Code First yaklaşımı, veri tabanı tasarımı yerine kod odaklı bir yaklaşım sunar. Bu yaklaşımda, .NET Core projenizde yer alan sınıflar, veri tabanı tablolarına dönüştürülür ve veri tabanı içerisindeki ilişkiler de sınıf içerisindeki ilişkilerle belirlenir.

Code First Yaklaşımının Adımları

Code First yaklaşımı ile .NET Core projenizde yeni bir veri tabanı oluşturmak için aşağıdaki adımlar izlenir:

  • Sınıfların Oluşturulması: İlk adım, veri tabanı tablolarına dönüştürülecek olan sınıfların oluşturulmasıdır. Bu sınıfların her biri bir tabloya karşılık gelir. Örneğin, bir "User" sınıfı, "Users" adlı bir tabloya dönüştürülebilir.
  • İlişkilerin Tanımlanması: Sınıflar arasındaki ilişkiler, sınıf içerisinde Navigation Property'ler ile belirlenir. Örneğin, bir "User" sınıfı içerisindeki "Posts" property'si, "Posts" sınıfı ile ilişki kurar ve "Users" tablosu ile "Posts" tablosu arasında bir ilişki oluşturur.
  • Veri Tabanının Oluşturulması: Sınıflar ve ilişkiler tanımlandıktan sonra, veri tabanı otomatik olarak oluşturulabilir. Bu işlem, Entity Framework Core tarafından gerçekleştirilir.

Code First Yaklaşımının Kullanımı

Entity Framework Core üzerinde Code First yaklaşımının kullanımı oldukça basittir. Öncelikle, projenize Entity Framework Core nuget paketini eklemeniz gerekmektedir. Daha sonra, DbContext sınıfınızı oluşturarak, sınıflarınızı DbSet property'leri ile eşleştirebilirsiniz. Bu işlem tamamlandıktan sonra, veri tabanınızı oluşturmak için "Add-Migration" ve "Update-Database" komutlarını Package Manager Console üzerinden kullanabilirsiniz. Örneğin:

Adım Komut Açıklama
1 Add-Migration InitialCreate İlk göç dosyasının oluşturulması
2 Update-Database Veri tabanının oluşturulması

Ayrıca, sınıflarınızı veya veri tabanınızı güncellemek için yeni göç dosyaları oluşturabilirsiniz. Oluşturduğunuz göç dosyalarını, "Update-Database" komutu ile veri tabanınıza uygulayabilirsiniz.

Code First Yaklaşımı Örnekleri

Örnek olarak, bir blog uygulaması içerisindeki "Posts" ve "Comments" sınıfları verilebilir. Bu sınıflar arasında One-to-Many ilişkisi bulunmaktadır, yani bir "Post" sınıfı birden fazla "Comment" sınıfına sahip olabilir. Bu ilişki, aşağıdaki gibi kodlanabilir:

    public class Post  {      public int Id { get; set; }      public string Title { get; set; }      public string Content { get; set; }      public ICollection<Comment> Comments { get; set; }  }  public class Comment  {      public int Id { get; set; }      public string Content { get; set; }      public Post Post { get; set; }  }  

Bu sınıflardan yola çıkarak, bir DbContext sınıfı oluşturulabilir:

    public class BlogContext : DbContext  {      public DbSet<Post> Posts { get; set; }      public DbSet<Comment> Comments { get; set; }      protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)      {          optionsBuilder.UseSqlServer("connectionString");      }  }  

Bu DbContext sınıfı içerisinde, "Posts" ve "Comments" tabloları DbSet property'leri ile eşleştirilmiştir. Ayrıca, SQL Server veri tabanına bağlantı sağlamak için "OnConfiguring" metodu kullanılmıştır.

Son olarak, veri tabanı oluşturmak için Package Manager Console üzerinde "Add-Migration" ve "Update-Database" komutları kullanılabilir:

    Add-Migration CreateTables  Update-Database  

Bu komutlar, veri tabanı tablolarını oluşturacaktır. Artık "Posts" ve "Comments" sınıfları kullanılarak veri tabanı işlemleri yapılabilir.


Database First Yaklaşımı

Database First yaklaşımı, veri tabanının önceden oluşturulduğu durumlarda tercih edilen bir yaklaşımdır. Bu yaklaşımda, öncelikle veri tabanı tasarlanır, daha sonra Entity Framework Core aracılığıyla kodlara dökülür. Böylece veri tabanındaki tüm nesneler (tablo, view, stored procedure vb.) otomatik olarak kod tarafında da oluşturulmuş olur.

Database First yaklaşımını kullanarak, var olan bir veri tabanını .NET Core projenize dahil edebilir ve veri tabanına erişim sağlayabilirsiniz. Adımları ise şu şekildedir:

  • Öncelikle, Visual Studio üzerinde yeni bir .NET Core projesi oluşturmak için New Project > .NET Core > Console App seçeneği seçilir.
  • Sonrasında, proje içerisinde Entity Framework Core kullanabilmek için NuGet üzerinden Microsoft.EntityFrameworkCore.SqlServer ve Microsoft.EntityFrameworkCore.Tools paketleri yüklenir.
  • Ardından, Visual Studio üzerinde bir veri tabanı bağlantısı oluşturulur ve bağlantı bilgileri projeye eklenir.
  • Son olarak, Scaffold-DbContext komutu ile veri tabanındaki nesneler otomatik olarak .NET Core projesine dökülür.

Örnek olarak, bir online mağaza yönetim sistemi düşünelim. Veri tabanı içerisinde ürünler, müşteriler, siparişler ve kategoriler tabloları yer alsın. Bu tabloların her biri için Entity Framework Core ile model sınıfları oluşturabilir ve bu sınıflar aracılığıyla veri tabanı üzerinde işlemler gerçekleştirebiliriz.


Micro ORM

Micro ORM Nedir?

Micro ORM, ufak boyutlu olmasına rağmen veri tabanı işlemlerini kolaylaştıran bir yazılım aracıdır. Büyük ORM araçlarından daha hafiftir ve yalnızca temel veri tabanı işlemlerini yürütmek için kullanılır. Bazı popüler Micro ORM araçları arasında Dapper, PetaPoco ve OrmLite yer almaktadır.

Micro ORM'lerin Avantajları

  • Hafif ve basit
  • Kolay kullanım
  • Veri tabanı işlemlerinin hızlı bir şekilde yürütülmesi
  • Veri tabanı sistemiyle doğrudan etkileşim

Micro ORM'lerin Dezavantajları

  • İleride daha büyük boyutlu ve karmaşık projelerle başa çıkmakta zorlanabilirler
  • ORM araçlarına kıyasla daha az özellik sunarlar

Dapper Nedir?

Dapper, Micro ORM araçlarından biridir ve .NET platformu için tasarlanmış açık kaynak bir yazılımdır. Dapper, dinamik sorgular icra eder ve sadece temel veri tabanı işlemlerini yürütmek için kullanılır. Ayrıca, performans için optimize edilmiştir ve büyük projelerde bile hızlı bir şekilde çalışır.

Dapper Nasıl Kullanılır?

Dapper'ın kullanımı oldukça kolaydır. Öncelikle, veritabanı bağlantısını sağlamak ve sorguları yürütmek için bir SqlConnection objesi oluşturun. Daha sonra, Dapper'ın Execute, Query veya QueryFirstOrDefault gibi temel yöntemlerinden birini kullanarak sorguları yürütebilirsiniz. Daha üst düzey yöntemler arasında Join metodları ve MultiMapping yer almaktadır.

Örneğin, aşağıdaki kod bloğu, SqlConnection objesi oluşturarak bir veritabanı sorgusunu nasıl yürütebileceğinizi gösterir:

using (var connection = new SqlConnection(connectionString)){    connection.Open();    var sqlCommand = "SELECT * FROM Customers WHERE Country = @Country";    var customers = connection.Query<Customer>(sqlCommand, new { Country = "Turkey" });    return customers;}

Bu kod bloğu, "Turkey" ülkesindeki müşterilerin veritabanından çekilmesini sağlar.


ADO.NET

.NET Core projelerinde, veri tabanı yönetimi için ADO.NET kullanılabilecek seçeneklerden biridir. ADO.NET, doğrudan veri tabanına bağlanarak veri işlemlerini gerçekleştiren bir teknolojidir. Bu yöntem özellikle, özelleştirilmiş veri tabanı işlemlerinin yapılması gereken veya ORM ve Micro ORM'lerin gereksinimlerini karşılayamayan projeler için idealdir.

Entity Framework Core ve Micro ORM'ler gibi alternatif teknolojilere karşılaştırıldığında, ADO.NET doğrudan veri tabanına bağlanarak daha hızlı performans sağlar. Ancak, ORM ve Micro ORM'lerin sunduğu farklı özellikleri ADO.NET sağlayamaz. ADO.NET, herhangi bir ORM aracı kullanmadan doğrudan bir SQL sorgusu veya veri tabanı stored procedure çağrısı yapmak için kullanılabilir. Fakat bu yöntem, performansı artırsa da, kod karmaşıklığını da arttırabilir.


Veri Tabanı İlişkileri

Veri tabanı yönetimi ile güçlü bir .NET Core projesi oluşturmak, farklı veri tabanı yöntemlerinin doğru bir şekilde kullanıldığı bir proje ile mümkündür. Veri tabanı ilişkileri de bu yöntemlerden biridir.

Veri tabanı ilişkileri, veri tabanı tasarımında önemli bir yer tutar. One-to-One, One-to-Many ve Many-to-Many ilişkileri de dahil olmak üzere farklı ilişki tipleri vardır. One-to-One, iki tablo arasındaki tekil bir ilişkidir ve her kayıt bir kez yinelemesi olmadan bir diğerine bağlanır. One-to-Many, birincil tabloda bir anahtar alanı ve ikincil tabloda bu anahtar alanı bağlamak için bir yabancı anahtar alanı kullanılarak birçok kayıdı ilişkilendirir. Many-to-Many ilişkisi, iki tablo arasındaki çoktan-çoklu ilişkidir. Bu ilişki, çoğunlukla bir bağlayıcı tablo kullanılarak oluşturulur.

Bunun örneklerini verelim: Benzer bir kişisel finans uygulamasında, bir kullanıcının farklı hesapları vardır, yani tek bir kullanıcının birden fazla banka hesabı vardır (One-to-Many). Ayrıca, kullanıcının birçok kredi kartı olabilir ve her kredi kartı birçok kullanıcı tarafından kullanılabilir (Many-to-Many).

Bu ilişkiler, veri tabanı tasarımında önemlidir ve doğru bir şekilde uygulanmalıdır. Bu nedenle, .NET Core projelerinde veri tabanı yönetimi için kullanılabilecek ORM, Micro ORM ve ADO.NET yöntemleri de değerlendirilmelidir.


One-to-One

One-to-One ilişkisi, bir veri tabanı kavramıdır ve iki tablo arasında oluşur. Bu ilişki, birincil anahtarların eşleşmesine dayanır ve bir tabloda bir satırın, diğer tabloda bir satıra karşılık gelmesi durumunda meydana gelir.

Entity Framework Core ve SQL Server kullanarak One-to-One ilişkisi oluşturmak oldukça kolaydır. Öncelikle, iki tablonun oluşturulması gerekir. Bunlardan biri "Person" tablosu gibi birincil anahtar alanı olan bir tablodur ve diğeri "PersonDetails" gibi birincil anahtar alanı olmayan ikincil bir tablodur.

Person PersonDetails
PersonID (PK) PersonDetailsID (PK)
Name Address
Surname Phone

Bu tablolar oluşturulduktan sonra, Entity Framework Core kullanarak ilişki de tanımlanabilir. Öncelikle, iki tabloyu birbirine bağlamak için Person ve PersonDetails sınıflarının modelleri oluşturulur. Bu modelleri kullanarak One-to-One ilişkisi oluşturulabilir.

public class Person{    public int PersonID { get; set; }    public string Name { get; set; }    public string Surname { get; set; }    public PersonDetails PersonDetails { get; set; }}public class PersonDetails{    public int PersonDetailsID { get; set; }    public string Address { get; set; }    public string Phone { get; set; }    public int PersonID { get; set; }    public Person Person { get; set; }}

Bu modelde, Person sınıfında PersonDetails sınıfına bir referans belirtilmiştir. PersonDetails sınıfındaysa, Person sınıfına bir referans belirtilmiştir. Bu sayede iki tablo arasında bir ilişki kurulmuştur.

One-to-One ilişkisi, kişisel bilgiler gibi detaylı bilgileri içeren bir tablo yaratmak için kullanılabilir. Bu sayede tek bir tabloya tüm bilgileri koymak yerine, iki farklı tabloda daha düzenli ve organize bir yapı oluşturulabilir.


One-to-Many

One-to-Many ilişkisi, veri tabanında bir nesnenin bir müşterinin birçok siparişinin bulunmasına benzer şekilde, birçok kaydın tek bir anahtar alanına sahip olan bir ilişkidir. Bu ilişki, Entity Framework Core ile kolayca oluşturulabilir.

Örneğin, bir müşteriye ilişkin birçok siparişin olduğu bir veritabanı tasarlıyoruz. Müşteri entity'sinin birincil anahtarı olan CustomerId, siparişlerin dış anahtarıdır. Bu durumda, bir Customer nesnesine sahip olan birçok Order nesnesi olacaktır.

Customer Order
CustomerId (PK) OrderId (PK)
FirstName OrderDate
LastName CustomerId (FK)

Yukarıdaki şemada görüldüğü gibi, CustomerId, Order entity'sinin bir dış anahtar alanı olarak kullanılır.

Entity Framework Core, bu ilişkinin oluşturulması için bir scalffolded oluşturma aracı sunar. One-to-Many ilişkisini model class'ında, Customer ve Order entity'sini temsil eden sınıflarda tanımlayalım.:

public class Customer{    public int CustomerId { get; set; }    public string FirstName { get; set; }    public string LastName { get; set; }    public ICollection<Order> Orders { get; set; }}public class Order{    public int OrderId { get; set; }    public DateTime OrderDate { get; set; }    public int CustomerId { get; set; }    public Customer Customer { get; set; }}

Yukarıdaki kodda, Customer entity'sinde Orders adında bir koleksiyon tanımladık. Ayrıca, Order entity'sinde CustomerId foreign key'i ve Customer nesnesi var.

One-to-Many ilişkisinin oluşturulması, yalnızca DbSet özelliklerinin düzenlenmesini ve Fluent API'nin kullanılmasını gerektirir. Aşağıdaki örnek, Entity Framework Core ile audit takibinde kullanılan Customer ve Order entity'sinde One-to-Many ilişkisinin nasıl kurulacağını gösterir.

protected override void OnModelCreating(ModelBuilder modelBuilder){    modelBuilder.Entity<Order>()        .HasOne(a => a.Customer)        .WithMany(b => b.Orders)        .HasForeignKey(a => a.CustomerId);}

Yukarıdaki kod, Order entity'sinin Customer ile Many-to-One ilişkisini tanımlar. HasOne metodu, Order entity'sinin sahip olduğu Customer nesnesine işaret eder. WithMany, Customer entity'sinde tanımlanan koleksiyonun tamamlanacağı Entity tipini belirler. HasFoerignKey metodu, CustomerId'yi dış anahtar alanı olarak belirler.

Bu işlemden sonra, Entity Framework Core, tablolara One-to-Many ilişkisinin enjekte edilmesi sırasında Order entity'sindeki CustomerId alanını kullanacak ve müşteri adına göre otomatik olarak koleksiyonlara bağlanacaktır.


Many-to-Many

Many-to-Many ilişkisi, birden fazla kaynağın birden fazla hedefe bağlandığı veri tabanı ilişkisi türüdür. Bu ilişki türünde, bir kaynak çok sayıda hedefe bağlanabilir ve bir hedef de birçok kaynaktan veri alabilir.

Entity Framework Core ile Many-to-Many ilişkisi oluşturmak için, öncelikle iki varlık arasında bir ilişki belirtilmelidir. Ardından, ara bir varlık oluşturulmalıdır. Bu ara varlık, her iki varlık arasında bir bağlantı sağlar.

Özellik Açıklama
Id Ara varlık için benzersiz bir tanımlayıcı
SourceEntityId Birinci varlık için tanımlayıcı
TargetEntityId İkinci varlık için tanımlayıcı

SQL Server ile Many-to-Many ilişkisi oluşturmak için, öncelikle iki tablo arasında bir bağlantı tablosu oluşturulmalıdır. Bu bağlantı tablosu, her iki tablo arasındaki ilişkiyi sağlar.

CREATE TABLE SourceTable(  Id int PRIMARY KEY,  Name varchar(255))CREATE TABLE TargetTable(  Id int PRIMARY KEY,  Name varchar(255))CREATE TABLE ConnectionTable(  SourceTableId int FOREIGN KEY REFERENCES SourceTable(Id),  TargetTableId int FOREIGN KEY REFERENCES TargetTable(Id),  PRIMARY KEY (SourceTableId, TargetTableId))

Many-to-Many ilişkisi, veri tabanı projelerinde sıkça kullanılan bir ilişki türüdür. Entity Framework Core ve SQL Server ile bu ilişki türü kolayca oluşturulabilir.


Veri Tabanı İşlemleri

Veri tabanı işlemleri, .NET Core projelerinde oldukça önemli bir yere sahiptir. Bu işlemler CRUD kısaltmasıyla ifade edilen temel işlemleri içermektedir: Create, Read, Update ve Delete. CRUD işlemleri, veri tabanı yönetimi için olmazsa olmazlar arasında yer alır.

Create işlemi, veri tabanında yeni bir kayıt oluşturmak için kullanılır. Örneğin, bir e-ticaret sitesinde yeni bir ürün eklenmesi, Create işlemine örnek gösterilebilir. Read işlemi ise, veri tabanındaki verileri okuyarak kullanıcıya sunmak için kullanılır. Örneğin, bir blog sitesinde yayınlanan makalelerin görüntülenmesi, Read işlemine örnek olarak verilebilir.

Update işlemi, veritabanındaki var olan bir kaydı güncellemek için kullanılır. Örnek olarak, bir sosyal medya uygulamasında kullanıcının profil bilgilerinde değişiklik yapılması, Update işlemine örnek gösterilebilir. Son olarak, Delete işlemi, veri tabanındaki bir kaydı silmek için kullanılır. Örneğin, bir haberlik sitesindeki bir haberin silinmesi, Delete işlemine örnek gösterilebilir.

Veri Tabanı İşlemleri konusunda açıklayıcı ve örneklerle dolu bir içerik size projelerinizde yol gösterici olabilir. Ayrıca, farklı senaryolara uygun kod örneklerini içeren bir liste hazırlamak, projelerinizde üretkenliğinizi artıracaktır.


CRUD İşlemleri

CRUD işlemleri, create (oluşturma), read (okuma), update (güncelleme), delete (silme) işlemlerinin kısaltmasıdır. Bu işlemler, veri tabanı yönetiminde en temel işlemlerdir ve neredeyse tüm uygulamalar bu işlemleri kullanır.

Hoşgeldiniz sayfası, kullanıcının uygulamaya giriş yaptığında karşılaştığı ilk sayfadır. Bu sayfanın tasarımı ve içeriği, uygulamanın ilk izlenimini oluşturur. Genellikle HTML ve CSS kullanılarak oluşturulur.

Veri eklemek için kullanılacak yönteme bağlı olarak, farklı teknikler kullanılabilir. Entity Framework Core üzerinde Code First yaklaşımı kullandığınızda, veri eklemek için model sınıfı özelliklerini doldurup bir nesne oluşturmanız yeterlidir ve SaveChanges() metodunu çağırarak veriyi veri tabanına kaydedebilirsiniz.

Veri tabanındaki verileri güncellemek için de benzer bir yöntem kullanabilirsiniz. Model sınıfı özelliklerini güncelleyerek, ilgili nesneyi SaveChanges() metodu ile kaydedebilirsiniz.

Veri silmek için genellikle bir silme metodu kullanılır. Entity Framework Core'da Remove() metodu ile istenilen nesneyi silmek mümkündür.

Veri tabanındaki verileri listelemek için SELECT sorgusu kullanılır. Entity Framework Core'daki DbSet nesnesi üzerinde bulunan ToList() metodu ile birlikte veri tabanındaki verileri listeleyebilirsiniz.


Örnek Senaryolar ve Kod Örnekleri

.NET Core projelerinde veri tabanı yönetimi için kullanılabilecek farklı yöntemlerin yanı sıra, farklı senaryolara uygun kod örnekleri de sunulmaktadır. Bu örnekler arasında e-ticaret, sosyal medya, haberlik ve blog gibi farklı senaryolara ait örnekler yer alacaktır.

Örneğin, e-ticaret senaryosunda, ürünlerin listesi görüntülenir ve kullanıcılar ürünleri sepete ekleyebilirler. Sepet sayfasında seçilen ürünler ve fiyatları listelenir. Kullanıcılar satın almak istediklerini onaylar ve ödeme sayfasına yönlendirilirler. Bu senaryoda, müşterilerin onayını almak için veri tabanında bir tablo oluşturulması gerekiyor.

Sosyal medya senaryosunda, kullanıcılar arkadaşlarını ekleyebilir, paylaşımlarda bulunabilir ve mesajlaşabilirler. Arkadaş listeleri, paylaşımları ve mesajlaşmaları tutmak için veri tabanında tablolar oluşturulması gerekiyor.

Benzer şekilde, haberlik senaryosunda sitede gösterilmek üzere haberler tutulabilir ve blog senaryosunda kullanıcılar blog yazıları oluşturabilirler. Bu senaryolarda da, veri tabanında uygun tablolar oluşturulması gerekiyor.

.NET Core projelerinde veri tabanı ilişkilerinin yönetimi önemli olduğu gibi işlemlerin (CRUD) başarılı bir şekilde yürütülmesi de gereklidir. Bu nedenle, farklı senaryolara uygun örneklerle birlikte, CRUD işlemlerinin nasıl gerçekleştirileceği de açıklanacak ve örneklendirilecektir.