System.Drawing.Common Alternatifleri (.NET 7 ve Windows dışı)
.NET 6 ile başlayarak, Microsoft System.Drawing.Common'ı Linux ve macOS'ta desteklemeyi durdurdu. Bu kütüphane artık yalnızca Windows'ta çalışacak. Daha fazla bilgi için, resmi belgelere başvurun.
"Bu platformda System.Drawing.Common desteklenmiyor" Hatasını Önlemek İçin Geçici Çözümler
.NET 6
Windows dışındaki işletim sistemlerinde, TypeInitializationException hatası, iç istisna olarak PlatformNotSupportedException ile birlikte atılır. Platform analizcileri Windows dışı platformlar için derleme zamanı uyarıları verir. Yapılandırma seçeneği ayarlanmadığı sürece aşağıdaki çalışma zamanı istisnası atılır:
System.TypeInitializationException : 'Gdip' tür başlatıcısı bir istisna oluşturdu.
---- System.PlatformNotSupportedException : System.Drawing.Common, Windows dışı platformlarda desteklenmiyor.
.NET 6'da geçici çözüm:
System.Drawing.EnableUnixSupport dosyasında true çalışma zamanı yapılandırma anahtarını runtimeconfig.json olarak ayarlayarak Windows dışındaki platformlar için desteği etkinleştirin:
{
"runtimeOptions": {
"configProperties": {
"System.Drawing.EnableUnixSupport": true
}
}
}
Ayrıca, yapılandırmayı programlı olarak etkinleştirmek için kodunuzun başına aşağıdaki satırı ekleyin:
// Enable System.Drawing.Common support on non-Windows platforms in .NET 6
System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);
// Enable System.Drawing.Common support on non-Windows platforms in .NET 6
System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);
' Enable System.Drawing.Common support on non-Windows platforms in .NET 6
System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", True)
.NET 7 ve sonrası
.NET 7'den itibaren Microsoft, daha önce mevcut olan geçici çözümü de dahil olmak üzere, Linux ve macOS'ta System.Drawing.Common desteğini tamamen kaldırmıştır.
Iron Software, System.Drawing.Common için IronSoftware.Drawing adlı açık kaynaklı bir alternatif yayınladı.
Daha fazla bilgi almak için resmi belgeleri ziyaret edin: resmi belgeler.

