Özet
Üretim için doğru klasörleme; dosyaları rastgele katmanlara ayırmak değil, iş kuralları ile altyapı ayrıntıları arasındaki bağımlılık yönünü görünür kılmaktır. API uçları, uygulama servisleri, alan modeli, veri erişimi, sözleşmeler, güvenlik ve testler ayrı sorumluluklarda tutulmalı; her klasörün sahibi ve dışarı açtığı sözleşme açık olmalıdır.

Kapsam ve Beklenen Sonuç
Rehber, küçük bir API'nin büyürken controller, servis ve repository yığınına dönüşmesini önleyen modüler monolit yaklaşımını; bağımlılık enjeksiyonu, options doğrulaması, merkezi hata sözleşmesi ve test sınırlarıyla birlikte ele alır. Amaç, ASP.NET Core Web API İçin Üretim Klasörleme Standardı konusunda çalışan bir çözümün güvenlik, veri bütünlüğü, log, ölçüm ve geri dönüş kontrolleriyle doğrulanmasını sağlamaktır. Komut ve ayarlar hedef sürümde kontrollü bir test ortamında sınanmalıdır.
Ön Koşullar
- Güncel ve doğrulanmış bir yedek alın; geri yükleme adımını ve sorumlusunu belirleyin.
- Kullanılan ürün, framework, işletim sistemi ve veri tabanı sürümlerini kaydedin.
- Gizli anahtarları, parolaları ve bağlantı dizelerini kaynak koddan ve ekran görüntülerinden çıkarın.
- Değişiklik öncesi sağlık, performans ve güvenlik ölçümlerini kaydedin.
- Yetki, bakım penceresi ve geri dönüş sorumluluğunu işlem başlamadan netleştirin.
Uygulama Akışı
- Çözüm sınırlarını ve iş modüllerini belirle
- Domain ve Application bağımlılık yönünü kur
- API sözleşmelerini iç modellerden ayır
- Infrastructure kayıtlarını tek noktada topla
- Options sınıflarını başlangıçta doğrula
- Birim, entegrasyon ve mimari test klasörlerini ayır
- Publish çıktısını temiz bir ortamda doğrula
Bu makalede ASP.NET Core Web API İçin Üretim Klasörleme Standardı için mevcut durum okunur; kontrollü değişiklik uygulanır ve sonuç komut çıktısı, HTTP durumu, log veya ölçümle doğrulanır. Beklenen sonuç oluşmazsa sonraki adıma geçilmez; değişiklik geri alınır ve kök neden ayrıştırılır.
Güvenlik ve Veri Bütünlüğü
ASP.NET Core Web API İçin Üretim Klasörleme Standardı için güvenlik kuralı, başarısız işlemi başarılı göstermemektir. Kimlik doğrulama ve yetkilendirme ayrılmalı; 401, 403, doğrulama ve sunucu hataları ayrı kaydedilmelidir. Dış girdiler sınırda doğrulanmalı; parola, token, özel anahtar ve bağlantı dizesi loglanmamalıdır. ASP.NET Core Web API İçin Üretim Klasörleme Standardı için veri değişiklikleri transaction, idempotency veya güvenli yeniden denemeyle sınırlandırılmalıdır. Geçici teşhis izinleri işlem sonunda kapatılmalı; güncelleme, silme ve yetki değişiklikleri aktör, zaman, hedef ve sonuç bilgisiyle denetlenmelidir.
Doğrulama Kontrol Listesi
- Domain katmanı ASP.NET Core paketi bilmiyor
- Controller içinde iş kuralı bulunmuyor
- Gizli değerler kaynak kodda tutulmuyor
- Her uç için standart hata sözleşmesi var
- Release derlemesi uyarısız tamamlanıyor
- Hata senaryosu beklenen HTTP durumu ve açıklanabilir hata koduyla sonuçlanıyor.
- Günlüklerde hassas veri bulunmuyor ve Request ID ile uçtan uca iz sürülebiliyor.
- Geri dönüş adımı test edildi; önceki çalışır duruma ulaşma süresi biliniyor.
Karar ve Hata Teşhis Notları
| Durum | Doğru yaklaşım | Kaçınılacak yaklaşım |
|---|---|---|
| Beklenen sonuç oluşmadı | Request ID, log ve bağımlılık sağlığını birlikte incele | Yetki veya güvenlik kontrolünü kapat |
| Yalnız production bozuldu | Sürüm, ortam değişkeni, ağ ve dosya izinlerini karşılaştır | Geliştirme ayarını körlemesine kopyala |
| Değişiklik geri alınamıyor | Önceki artifact, yapılandırma ve veri planını hazırla | Yalnız dosya yedeğine güven |
Sık Sorulan Sorular
ASP.NET Core Web API İçin Üretim Klasörleme Standardı kimler için uygundur?
Bu rehber, konuyu ilk kez kuran geliştiriciler kadar mevcut production sistemini denetlemek isteyen teknik ekipler için de hazırlanmıştır. Başlangıç adımları kavramları netleştirir; güvenlik, gözlemlenebilirlik ve geri dönüş bölümleri ise canlı sistem kararlarını hedefler.
Yalnız adımları uygulamak yeterli mi?
Hayır. Sürüm, işletim sistemi, sağlayıcı ve trafik yapısı sonucu değiştirebilir. Her adımın ardından doğrulama kontrolü çalıştırılmalı ve kaynak bölümündeki resmî dokümanda güncel davranış teyit edilmelidir.
Production ortamında doğrudan uygulanabilir mi?
Önce yedek, erişim planı, bakım penceresi ve geri dönüş hazırlanmalıdır. Ağ, kimlik, veri tabanı veya dağıtım değişiklikleri test ortamında denenmeden doğrudan canlıya taşınmamalıdır.
Başarıyı nasıl ölçerim?
Kontrol listesindeki teknik sonuçlara ek olarak hata oranı, yanıt süresi, kaynak kullanımı, güvenlik olayı ve kullanıcı akışı ölçülür. Değişiklik öncesi temel değerlerle karşılaştırma yapılmadan iyileşme varsayılmaz.
İlgili Yazılar
- Controller İçine SQL Yazmadan Dapper Mimarisi
- JWT Access ve Refresh Token Akışı Nasıl Kurulur?
- Repository ve Unit of Work Ne Zaman Kullanılmalı?
Kaynaklar
Sürüm ve Güncelleme Bilgisi
Bu içerik Temmuz 2026'da resmî üretici ve standart dokümantasyonları esas alınarak hazırlanmıştır. Araç ve framework davranışları sürüme göre değişebileceği için komutları uygulamadan önce bağlantılı kaynağın hedef sürümünü kontrol edin. İçeriğin görünür metni, kaynakları ve yapılandırılmış verisi birbiriyle tutarlı tutulmalıdır.