ASP.NET Core Eğitimi – 03 (Entity Framework Core)

Bir önceki dersimizde “ASP.NET Core kullanarak Web Api Oluşturma” konusunu işlemiştik. Bu dersimizde ASP.NET Core Web Application ile veritabanı işlemleri konusunu işleyeceğiz (yeni veritabanı ile). Veritabanı işlemlerinde EF Core (Entity Framework Core) kullanacağız.

Öncelikle Visual Studio üzerinden Dosya > Yeni > Proje yolundan ASP.NET Core Web Application seçerek projemizi oluşturuyoruz. Karşımıza çıkan ekrandan eğer yüklü ise CORE 2.1 i seçiyoruz. Yüklü değilse buradan indirebilirsiniz. Şablon olarak MVC seçip projemizi oluşturuyoruz.

Projemizde Entity Framework Core kullanacağımız için aşağıdaki paketleri Package Manager Console aracılığıyla kuralım.

  • Install-Package Microsoft.EntityFrameworkCore.SqlServer
  • Install-Package Microsoft.EntityFrameworkCore.Tools
  • Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

Daha sonra Models klasörüne sağ tıklayarak Models.cs isimli bir sınıf ekleyelim. Sınıfın içeriği aşağıdaki gibi olsun.

using System.Collections.Generic;

using Microsoft.EntityFrameworkCore;

namespace AspNetCoreEFCore(Projenin Adı).Models

{

public class BloggingContext : DbContext

{

public BloggingContext(DbContextOptions<BloggingContext> options)

: base(options)

{ }

public DbSet<Universite> Universiteler { get; set; }

public DbSet<Bolum> Bolumler { get; set; }

}

public class Universite

{

public int UniversiteId { get; set; }

public string UniversiteAdi { get; set; }

public List<Bolum> Bolumler { get; set; }

}

public class Bolum

{

public int BolumId { get; set; }

public string BolumAdi { get; set; }

public string Aciklama { get; set; }

public int UniversiteId { get; set; }

public Universite Universite { get; set; }

}

}

Oluşturduğumuz bu sınıfı veritabanı oluşturmak için kullanacağız. Bu yüzden bağlantı ayarları için Startup.cs dosyasında aşağıdaki değişikliği yapalım.

public void ConfigureServices(IServiceCollection services)

{

services.AddMvc();

var connection = @"Server=.\SQLEXPRESS;Database=AspNetCoreEFCore;Trusted_Connection=True;ConnectRetryCount=0";

services.AddDbContext<BloggingContext>(options => options.UseSqlServer(connection));

}

Bağlantı ayarlarını kendi bilgisayarınızdaki sql sunucu ayarlarına göre ayarlayınız. Bu aşamada bilgisayarınızda sql server kurulu olmalıdır. Veya uzak bir sunucuda var olan bir sql server a bağlanabilirsiniz.

Geldik oluşturduğumuz modelin veritabanına aktarılmasına. Paket Management Konsol’u kullanarak sırasıyla aşağıdaki komutları çalıştırın.

  • Add-Migration InitialCreate
  • Update-Database

İşlem tamamnaldığında veritabanının otomatik olarak oluştuğunu göreceksiniz.

Gelelim denetleyici (Controller) kısmına. Yapıyı oturtmak adına öncelikle Controller klasörüne sağ tıklayarak yeni denetleyici ekliyoruz. Ekle işlemi sırasında karşımıza çıkan ekranda herhangi bir değişiklik yapmıyoruz. Daha sonra Yeni bir denetleyici daha ekliyoruz. Bu sefer MVC Controller with views, using Entity Framework seçeneğini seçiyoruz. Model Class olarak Universite, Data Context Class olarak BloggingContext ve dilerseniz layout page olarak varolan  ~/Views/Shared/_Layout.cshtml sayfasını seçebilirsiniz. Bu işlemi ayrıca Bolum için de yapıyoruz. Değişen tek şey Model class olarak Bolum seçilmesidir.

Biz bu işlemleri yaptığımızda görünümlerimiz de otomatik olarak oluşmuş oluyor. Şimdi projemizi çalıştırarak inceleyelim.

Ben iki tane üniversite ekledim. (Create New seçeneği ile)

Üniversitelere de birer tane bölüm ekledim. (Create New seçeneği ile)

Umarım faydalı olabilmişimdir. Uygulamanın kaynak kodunu indirmek için tıklayınız. Bir sonraki dersimizde görüşmek üzere.

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir