paint-brush
EF Temel Geçişleri: Başlamak İçin Adım Adım Kılavuzile@ssukhpinder
3,029 okumalar
3,029 okumalar

EF Temel Geçişleri: Başlamak İçin Adım Adım Kılavuz

ile Sukhpinder Singh8m2023/03/09
Read on Terminal Reader
Read this story w/o Javascript

Çok uzun; Okumak

EF Core, geliştiricilerin veritabanlarıyla etkileşime girmesine olanak tanıyan bir nesne ilişkisel haritalama (ORM) çerçevesidir. EF Core'un temel özelliklerinden biri veritabanı geçişlerini yönetebilme yeteneğidir. Bu makalede EF Core geçişleri, bunların neden önemli olduğu ve bunların nasıl kullanılacağı bir örnekle gösterilmektedir.
featured image - EF Temel Geçişleri: Başlamak İçin Adım Adım Kılavuz
Sukhpinder Singh HackerNoon profile picture

Entity Framework Core (EF Core), geliştiricilerin .NET nesnelerini kullanarak veritabanlarıyla etkileşimde bulunmasına olanak tanıyan bir nesne ilişkisel eşleme (ORM) çerçevesidir. EF Core'un temel özelliklerinden biri, veritabanı geçişlerini yönetebilme yeteneğidir.

Önkoşullar

  • Temel C# programlama dili bilgisi.
  • Temel OOPS kavramlarını anlama


Bu makalede EF Core geçişleri, bunların neden önemli olduğu ve bunların nasıl kullanılacağı bir örnekle gösterilmektedir. Yani başlamak için:


C#'a giriş


C# bir süredir ortalıkta dolaşıyor ve daha gelişmiş özellikler elde ederek gelişmeye devam ediyor. orta.com

Öğrenme hedefleri

  • Örnekle EF Core geçişi nasıl kullanılır?


  • EF Core geçişleri neden önemlidir?

Başlarken

EF Çekirdek Geçişleri, veritabanı şemanızda zaman içinde yapılan değişiklikleri yönetmenin bir yoludur. Veritabanı modelinizde değişiklik yaptığınızda (tablo veya sütun ekleme veya kaldırma gibi), bu değişiklikleri açıklayan bir geçiş oluşturabilirsiniz.


Daha sonra geçişler, veritabanı şemasını yeni modelle eşleşecek şekilde güncellemek için kullanılır.

EF Temel Geçişleri Neden Önemlidir?

EF Çekirdek Geçişleri önemlidir çünkü verileri korurken veritabanı şemanızı zaman içinde geliştirmenize olanak tanır.


Geçişler olmasaydı, modelinizde her değişiklik yaptığınızda veritabanı şemanızı manuel olarak değiştirmeniz gerekir; bu da zaman alıcı ve hataya açık olabilir.


Geçişler ayrıca veritabanı şemanızı sürümlendirmenin bir yolunu da sağlar; böylece değişiklikleri kolayca izleyebilir ve gerekirse önceki sürümlere geri dönebilirsiniz.

EF Temel Geçişleri Nasıl Kullanılır?

EF Temel Geçişlerini kullanmak için birkaç adımı uygulamanız gerekir:


  1. Yeni bir EF Core projesi oluşturun. İlk adım Visual Studio'da yeni bir EF Core projesi oluşturmaktır. Bunu "Create a new project" seçeneğini seçip ardından "ASP.NET Core Web Application" seçeneğini seçip "Web Application (Model-View-Controller)" şablonunu seçerek yapabilirsiniz.


  2. Bir veritabanı bağlamı oluşturun. Bir sonraki adım, bir veritabanı bağlam sınıfı oluşturmaktır. Bu sınıf, .NET nesneleriniz ile veritabanı arasındaki etkileşimleri yönetir. Veritabanı bağlamı oluşturmak için projenizde yeni bir sınıf oluşturun ve onu DbContext sınıfından devralın.


 public class MyDbContext : DbContext { public MyDbContext(DbContextOptions<MyDbContext> options) : base(options) { } }


Veritabanı Modeli Oluşturun

Bir veritabanı bağlamı oluşturduktan sonra bir veritabanı modeli oluşturmanız gerekecektir. Bu model, veritabanınızın yapısını temsil eder ve EF Core tarafından veritabanı tabloları ve sütunları oluşturmak için kullanılır.


Veritabanı modeli oluşturmak için projenizde yeni bir sınıf oluşturun ve özelliklerini veritabanı alanları olarak tanımlayın.


 public class MyModel { public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } }


EF Temel Geçişlerini Etkinleştir

Daha sonra projenizde EF Temel Geçişlerini etkinleştirmeniz gerekir. Bunu yapmak için Paket Yönetici Konsolu'nu açın ve aşağıdaki komutu girin:


 PM> Install-Package Microsoft.EntityFrameworkCore.Tools


Bu paket, EF Temel Geçişlerini oluşturmak ve yönetmek için gereken araçları içerir.


Taşıma Oluşturma

EF Core Migrations etkinleştirildiğinde ilk geçişinizi oluşturabilirsiniz. Geçiş oluşturmak için Paket Yönetici Konsolu'nu açın ve aşağıdaki komutu girin:


 PM> Add-Migration InitialCreate


Bu, veritabanı modelinizde yaptığınız değişiklikleri açıklayan "InitialCreate" adlı yeni bir geçiş oluşturacaktır. Taşımanın içeriğini projenizin "Taşımalar" klasöründe görüntüleyebilirsiniz.


Veritabanını Güncelle

Geçiş oluşturduktan sonra veritabanı şemasını yeni modelle eşleşecek şekilde güncelleyebilirsiniz. Bunu yapmak için Paket Yönetici Konsolu'nu açın ve aşağıdaki komutu girin:


 PM> Update-Database


Bu, geçişi veritabanına uygulayacak ve şemasını güncelleyecektir.

Örnek

EF Temel Geçişlerini kullanma örneğine bakalım. Diyelim ki iki sütunlu basit bir "Öğrenciler" tablosu oluşturmak istiyoruz: "Kimlik" ve "Ad". Visual Studio'da yeni bir ASP.NET Core Web Application projesi oluşturarak başlayacağız.


  1. Yeni bir EF Core projesi oluşturun. Visual Studio'da yeni bir ASP.NET Core Web Uygulaması projesi oluşturun. "Web Uygulaması (Model-Görünüm-Denetleyici)" şablonunu seçin ve Kimlik Doğrulama için "Bireysel Kullanıcı Hesapları"nı seçin. Projeye "EFCoreMigrationsExample" adını verin.


  2. Bir veritabanı bağlamı oluşturun. Projenin "Models" klasöründe "MyDbContext" adında yeni bir sınıf oluşturun ve bunu DbContext sınıfından devralın.


 using Microsoft.EntityFrameworkCore; namespace EFCoreMigrationsExample.Models { public class MyDbContext : DbContext { public MyDbContext(DbContextOptions<MyDbContext> options) : base(options) { } public DbSet<Student> Students { get; set; } } }


"Öğrenciler" özelliği, veritabanımızın "Öğrenciler" tablosunu temsil eden bir DbSet'tir.


Veritabanı Modeli Oluşturun

Projenin "Modeller" klasöründe yeni bir "Öğrenci" sınıfı oluşturun ve özelliklerini tanımlayın.

 namespace EFCoreMigrationsExample.Models { public class Student { public int Id { get; set; } public string Name { get; set; } } }


EF Temel Geçişlerini Etkinleştir

Paket Yönetici Konsolu'nu açın ve EF Core araçları paketini yüklemek için aşağıdaki komutu girin:

 PM> Install-Package Microsoft.EntityFrameworkCore.Tools


Taşıma Oluşturma

Paket Yönetici Konsolu'nu açın ve geçiş oluşturmak için aşağıdaki komutu girin:

 PM> Add-Migration InitialCreate


Bu, veritabanı modelimizde yaptığımız değişiklikleri açıklayan "InitialCreate" adında yeni bir geçiş yaratacaktır.


Taşıma dosyası şu şekilde görünmelidir:

 using Microsoft.EntityFrameworkCore.Migrations; namespace EFCoreMigrationsExample.Migrations { public partial class InitialCreate : Migration { protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.CreateTable( name: "Students", columns: table => new { Id = table.Column<int>(type: "int", nullable: false) .Annotation("SqlServer:Identity", "1, 1"), Name = table.Column<string>(type: "nvarchar(max)", nullable: true) }, constraints: table => { table.PrimaryKey("PK_Students", x => x.Id); }); } protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropTable( name: "Students"); } } }


Taşıma işlemi, "Kimlik" ve "Ad" sütunlarını içeren "Öğrenciler" adlı yeni bir tablo oluşturur.

Veritabanını güncelleyin Paket Yönetici Konsolu'nu açın ve veritabanı şemasını güncellemek için aşağıdaki komutu girin:


 PM> Update-Database


Bu, geçişi veritabanına uygulayacak ve şemasını güncelleyecektir.


Artık EF Core'u kullanarak veritabanımıza öğrenci ekleyebilir, güncelleyebilir ve silebiliriz. Örneğin veritabanına yeni bir öğrenciyi şu şekilde ekleyebiliriz:

 using EFCoreMigrationsExample.Models; namespace EFCoreMigrationsExample.Controllers { public class HomeController : Controller { private readonly MyDbContext _context; public HomeController(MyDbContext context) { _context = context; } public IActionResult Index() { var student = new Student { Name = "John" }; _context.Students.Add(student); _context.SaveChanges(); return View(); } } }


Bu kod, Öğrenci sınıfının yeni bir örneğini oluşturur ve Name özelliğini "John" olarak ayarlar. Daha sonra öğrenciyi Students DbSet'e ekler ve değişiklikleri veritabanına kaydeder.

Çözüm

EF Core Migrations, uygulamanızdaki veritabanı şeması değişikliklerini yönetmenin kolay bir yolunu sunar.


Bu makalede, DbContext oluşturma, model tanımlama, geçiş yapma ve veritabanı şemasını güncelleme dahil olmak üzere EF Core geçişlerini kullanarak basit bir veritabanı şemasının nasıl oluşturulacağı gösterilmektedir.


Bu, EF Core'un yapabileceklerinin yalnızca başlangıcıdır. Verileri sorgulamak ve işlemek, tablolar arasında karmaşık ilişkiler oluşturmak ve daha fazlasını yapmak için EF Core'u kullanabilirsiniz. Kullanım kolaylığı ve geniş özellik yelpazesiyle EF Core, .NET'te veri odaklı uygulamalar oluşturmak için mükemmel bir seçimdir.


Bu makale EF Core geçişlerine başlamanıza yardımcı oldu. Herhangi bir sorunuz veya yorumunuz varsa lütfen aşağıya bırakın. Mutlu kodlama!

Beni takip et

C# Yayını , LinkedIn , Instagram , Twitter , Dev.to


Burada da yayınlandı