10 Kasım 2026 tarihinde Microsoft, iki .NET sürümü için aynı gün güvenlik güncellemesi yayınlamayı bırakıyor: .NET 8 ve .NET 9. Bu tarihten sonra platformda bulunan hiçbir güvenlik açığı iki sürümün hiçbirinde yamanmayacak. Muhasebe sisteminiz, satış noktası yazılımınız ya da ERP'niz bunlardan biri üzerine kuruluysa — ve Suudi pazarında birçoğu öyle — nereye gideceğinize karar vermek için iki aydan az zamanınız var. İşletmelerin çoğu için doğru hedef, 14 Kasım 2028 tarihine kadar desteklenen .NET 10'dur; ilk sürüm adayı yalnızca iki gün önce çıkan .NET 11 değil.

8 Eylül'de ne oldu

8 Eylül 2026 tarihinde Microsoft, .NET 11'in go-live destek lisansıyla Release Candidate 1 aşamasına ulaştığını duyurdu. Bu, Microsoft'un nihai sürüm çıkmadan önce gerçek üretim ortamında kullanılmasını resmen desteklediği anlamına geliyor. Aynı gün .NET 10, .NET 9 ve .NET 8 için rutin bakım güncellemeleri yayınlandı.

Teknik haber bu. Bir işletme sahibini ilgilendiren haber ise bambaşka bir sayfada duruyor: aynı gün güncellenen resmi destek politikası sayfası, .NET 8 ve .NET 9'un 10 Kasım 2026 tarihinde destek dışı kalacağını açıkça belirtiyor. Gösterişli sürüm duyurusu ilgiyi topluyor; size gerçek para kaybettiren satır ise sıkıcı bir tabloda yazıyor.

"Uzun vadeli destek" sürümü neden destek dışı kalır

Microsoft her kasım ayında büyük bir .NET sürümü yayınlar. Çift numaralı sürümler uzun vadeli destek sürümleridir ve üç yıl ücretsiz yama alır; tek numaralı sürümler standart destek sürümleridir ve iki yıl alır.

.NET 8, 14 Kasım 2023 tarihinde çıktı, dolayısıyla üç yılı Kasım 2026'da doluyor. .NET 9, 12 Kasım 2024 tarihinde çıktı, dolayısıyla iki yılı da aşağı yukarı aynı anda doluyor. Bu yüzden ikisi de 10 Kasım'a denk geliyor. Ekiplerin hazırlıksız yakalandığı yer burası: "uzun vadeli destek" sonsuza kadar destek demek değildir. Çıkış gününden itibaren sayılan üç yıl demektir ve kimse bakmazken bu sürenin önemli bir kısmı çoktan geçti.

Doğru hedef .NET 11 değil, .NET 10

Böyle bir habere refleks tepki "o zaman en yenisine yükseltelim" olur. Kurumsal sistemlerin çoğu için bu yanlış bir karardır ve nedeni aynı destek tablosundadır.

.NET 10, 11 Kasım 2025 tarihinde çıktı, uzun vadeli destek sürümüdür ve 14 Kasım 2028 tarihine kadar desteklenir. Tek bir yükseltme, dosyayı yeniden açmadan size iki yıldan biraz fazla istikrar kazandırır. .NET 11 tek numaralı bir sürümdür; bu yüzden yalnızca iki yıllık standart destek alır ve daha yeni olmasına rağmen .NET 10'dan önce destek dışı kalır. Daha erken sona eren daha yeni bir sürüme geçmek yükseltme değildir — ek bir faturası olan bir ertelemedir.

İkinci bir husus daha var. .NET 11 sürüm adayının kendisi yalnızca 13 Ekim 2026 tarihine kadar desteklenir, çünkü üzerinden geçilmesi beklenen bir geçiş derlemesidir — önce bir sonraki adaya, sonra kasım sürümüne. "Go-live" ifadesini bir muhasebe sistemine sürüm adayı kurup orada bırakma daveti olarak okuyan herkes, bir yükseltme döngüsünden kurtulmak yerine aylık bir yükseltme döngüsüne kaydolmuş olur.

Muhasebe veya operasyon yazılımı kullanan bir şirket için pratik kural: her zaman çift numaralı uzun vadeli destek sürümünü hedefleyin. Tek numaralı sürümleri sürekli güncelleme yapan ve özellikleri erken isteyen ürün ekiplerine bırakın.

.NET 11 gerçekte neler getiriyor

Karar kaçınmaya değil bilgiye dayansın diye, sürüm adayının getirdikleri şunlar. C# tarafında, sürüm 15 union türlerini kararlı hâle getirdi — birden fazla biçim alabilen bir değeri ifade etmenin daha net bir yolu; örneğin ya başarılı olan ya da belirli bir nedenle başarısız olan bir işlem. Araçlar tarafında, test komutu mobil uygulamaları ele alma biçimini iyileştirdi ve çalıştırma düzeyinde denetimler ekledi.

Konteyner yayınlamada, imaj üretimi artık tekrarlanabilir ve zaten var olan katmanları yeniden yüklemiyor; bu da dağıtım süresini kısaltıyor ve neyi teslim ettiğinizi denetlemeyi kolaylaştırıyor. Paket yönetiminde, uyarılar hata olarak ele alındığında bile bilinen güvenlik açıkları olan paketleri güncellemek artık çalışıyor — ekipleri yalnızca bir derlemeyi geçirebilmek için güvenlik kontrolünü kapatmaya zorlayan eski bir pürüz. ASP.NET Core'da SignalR kimlik doğrulama yenileme API'leri son hâlini aldı ve Blazor Server devreleri artık eskimiş bir kimliği tutmak yerine yenilemeden sonra durumlarını güncelliyor. Unix sistemlerine süreç içi çökme raporlaması geldi; bu da bir sunucu gece saat üçte çöktüğünde daha iyi teşhis demek.

Bunlar gerçek iyileştirmeler. Hiçbiri, bir finans sistemini alternatifinden daha erken sona eren bir sürümde çalıştırmanın riskine ağır basmıyor.

Bu neden teknik değil, bir uyum dosyasıdır

Artık güvenlik yaması almayan bir platformu çalıştırmak bir mühendislik tercihi meselesi değildir. Kişisel Verilerin Korunması Kanunu (PDPL), müşteri verisi işleyen her kuruluşu uygun koruma önlemleri almakla yükümlü kılar ve ciddi her güvenlik incelemesi hangi platform sürümünü kullandığınızı ve desteğinin ne zaman bittiğini sorar. "Sekiz ay önce destek dışı kalan bir sürümdeyiz" cevabını bir denetçinin, imzadan önce size güvenlik anketi gönderen kurumsal bir müşterinin ya da bir siber sigortacının karşısında savunamazsınız.

Aynı durum Fatoora platformuna bağlı e-fatura sistemleri için de geçerlidir. Faturaları dijital olarak imzalayıp bir devlet kurumuna ileten bir sistemin, hâlâ kriptografik yama alan bir platform üzerinde durması gerekir. Bu iç bir ayrıntı değildir — faturanızın dayandığı güven zincirinin bir parçasıdır.

Şimdiden kasıma kadar bir eylem planı

  • Bu hafta — nerede durduğunuzu öğrenin. Tedarikçinizden veya teknik ekibinizden, kimsenin aklına gelmeyen küçük iç araçlar ve arka plan hizmetleri dâhil, çalıştırdığınız her sistemin arkasındaki .NET sürümünün bir envanterini isteyin. Bir sunucuda dotnet --list-runtimes bunu gösterir; projenin kendisinde ise proje dosyasındaki hedef framework girdisidir.
  • Gelecek hafta — önceliklendirin. .NET 8 veya daha eski olan her şeyi ve .NET 9 üzerindeki her şeyi işaretleyin. Zaten .NET 10 üzerinde olan her şey 2028 yılına kadar güvende. .NET 6 veya 7 üzerindeki her şey yıllardır destek dışı ve bir takvim değil, acil müdahale gerektiriyor.
  • İki hafta içinde — kırıcı değişiklikleri okuyun. Microsoft her sürüm için bir kırıcı değişiklikler listesi yayınlar. 8'den 10'a geçiş genellikle sorunsuzdur, ama başlamadan önce okumak günler kazandırır.
  • Bir ay içinde — önce test ortamını yükseltin. Hedef framework'ü değiştirin, derleyin, testleri çalıştırın, ardından her şeyden önce sistemi gerçek verilerin bir kopyasıyla çalıştırın.
  • Kasımdan önce — dağıtın. 10 Kasım'dan önce en az iki haftalık bir güvenlik payı bırakın ve ay sonu kapanışında ya da yoğun satış sezonunda dağıtım yapmayın.
  • Bir kez, kalıcı olarak. 14 Kasım 2028 tarihini bugün şirket takvimine yazın ve bir kural koyun: her yükseltme bir sonraki çift numaralı sürüme yapılır. Böylece bu iş yıllık bir sürpriz olmaktan çıkıp bilinen bir bütçe kalemine dönüşür.

Sistem bir tedarikçiden geldiyse

Birçok şirket kaynak koda sahip değildir; hazır bir sistemi bir tedarikçiden satın alır. Bu durumda bugün göndereceğiniz tek e-posta üç şey sorar: sistem hangi .NET sürümünde çalışıyor, .NET 10 üzerinde bir sürümü ne zaman teslim edeceksiniz ve yükseltme destek sözleşmemizin kapsamında mı, yoksa ayrıca mı faturalanacak. Tedarikçinizin nasıl cevap verdiği, ürün hakkında size herhangi bir sunumdan daha fazlasını söyler. Cevabı bilmeyen ya da oyalayan tedarikçi, 11 Kasım'da arayacağınız tedarikçinin ta kendisidir.

Kaynaklar

  • Microsoft — Announcing .NET 11 Release Candidate 1, 8 Eylül 2026: devblogs.microsoft.com
  • Microsoft — resmi .NET destek politikası ve destek bitiş tarihleri: dotnet.microsoft.com
  • Microsoft — .NET 11'deki kırıcı değişiklikler: learn.microsoft.com
  • Suudi Veri ve Yapay Zekâ Otoritesi (SDAIA) — Kişisel Verilerin Korunması Kanunu (PDPL): sdaia.gov.sa