Skip to content

Veritabanı İşlemleri

Genel Bakış

Bu bölümde, .NET uygulamalarında veritabanı işlemlerinin nasıl gerçekleştirileceğini, Entity Framework Core kullanımını ve veritabanı yönetiminin temel prensiplerini inceleyeceğiz.

İçindekiler

  1. Entity Framework Core
  2. LINQ
  3. Migrations
  4. Transactions
  5. Performance

Öğrenme Hedefleri

Bu bölümü tamamladığınızda: - Entity Framework Core'un temel kavramlarını anlayacaksınız - LINQ sorguları yazabileceksiniz - Repository Pattern'i uygulayabileceksiniz - Unit of Work pattern'ini kullanabileceksiniz - Veritabanı migration'larını yönetebileceksiniz

Ön Gereksinimler

Bu bölümü takip etmek için: - C# programlama dili bilgisi - Temel SQL bilgisi - .NET Core temel kavramları - Visual Studio veya VS Code kurulumu - .NET SDK kurulumu

Best Practices

  1. Veritabanı Tasarımı
  2. Normalizasyon kuralları
  3. İndeksleme stratejileri
  4. İlişki tipleri
  5. Performans optimizasyonu

  6. Kod Organizasyonu

  7. Repository pattern
  8. Unit of work
  9. Dependency injection
  10. SOLID prensipleri

  11. Performans

  12. Query optimizasyonu
  13. Connection pooling
  14. Caching stratejileri
  15. Batch işlemler

Örnek Proje Yapısı

DatabaseOperations/
├── Data/
│   ├── Context/
│   │   └── ApplicationDbContext.cs
│   ├── Entities/
│   │   ├── Product.cs
│   │   └── Category.cs
│   └── Repositories/
│       ├── IRepository.cs
│       └── Repository.cs
├── Services/
│   ├── IProductService.cs
│   └── ProductService.cs
└── Migrations/
    └── InitialCreate.cs

Sık Sorulan Sorular

  1. Entity Framework Core nedir ve neden kullanılır?
  2. ORM (Object-Relational Mapping) aracı
  3. Veritabanı işlemlerini kolaylaştırır
  4. LINQ desteği
  5. Cross-platform çalışabilme

  6. Repository Pattern neden önemlidir?

  7. Veritabanı erişimini soyutlar
  8. Test edilebilirliği artırır
  9. Kod tekrarını önler
  10. Bakımı kolaylaştırır

  11. LINQ nedir ve nasıl kullanılır?

  12. Language Integrated Query
  13. Veri sorgulama ve manipülasyonu
  14. Lambda expressions
  15. Extension methods

Kaynaklar