Entity Framework'ü projene dahil etmek için NuGet paket yöneticisini kullanacağız. Aşağıdaki adımları takip ederek kurulum yapabilirsin.
Proje Oluşturma:
NuGet Paketini Yükleme:
Microsoft.EntityFrameworkCore
paketini ara ve yükle.Install-Package Microsoft.EntityFrameworkCore
Veritabanı Bağlantısı:
DbContext
sınıfını oluşturman gerek.
Öncelikle bir model ve DbContext
sınıfı oluşturmalıyız.
using Microsoft.EntityFrameworkCore;
public class ApplicationDbContext : DbContext
{
public DbSet<Product> Products { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer(@"Server=.\SQLEXPRESS;Database=EFTestDb;Trusted_Connection=True;");
}
}
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public decimal Price { get; set; }
}
Veritabanına yeni bir ürün eklemek için Add
metodu kullanılabilir. İşte bir örnek:
public static void CreateProduct()
{
using (var context = new ApplicationDbContext())
{
var product = new Product
{
Name = "Laptop",
Price = 1500.00M
};
context.Products.Add(product);
context.SaveChanges();
}
}
Veritabanından veri okumak için Find
veya FirstOrDefault
gibi metotlar kullanılabilir.
public static void ReadProduct(int productId)
{
using (var context = new ApplicationDbContext())
{
var product = context.Products.FirstOrDefault(p => p.Id == productId);
if (product != null)
{
Console.WriteLine($"Product ID: {product.Id}, Name: {product.Name}, Price: {product.Price}");
}
else
{
Console.WriteLine("Product not found.");
}
}
}
FirstOrDefault metodu, belirtilen koşula uyan ilk öğeyi döndürür. Eğer öğe bulunamazsa null
döner.
Var olan bir veriyi güncellemek için nesneyi bulup değerlerini değiştirebilirsin.
public static void UpdateProduct(int productId, string newName, decimal newPrice)
{
using (var context = new ApplicationDbContext())
{
var product = context.Products.FirstOrDefault(p => p.Id == productId);
if (product != null)
{
product.Name = newName;
product.Price = newPrice;
context.SaveChanges();
}
}
}
Bir ürünü silmek için Remove
metodunu kullanabiliriz.
public static void DeleteProduct(int productId)
{
using (var context = new ApplicationDbContext())
{
var product = context.Products.FirstOrDefault(p => p.Id == productId);
if (product != null)
{
context.Products.Remove(product);
context.SaveChanges();
}
}
}
Bu örnekler, EF ile temel veritabanı işlemlerini nasıl gerçekleştirebileceğini gösterdi. Gelişmiş özellikleri kullanarak daha karmaşık işlemler de gerçekleştirebilirsin, örneğin ilişkili tablolarda işlemler yapma, transaction yönetimi vb.
Herhangi bir sorunuz varsa ya da başka bir konuda yardım isterseniz, size yardımcı olmaktan memnuniyet duyarım!