JSON’dan C# Sınıflarına

JSON’u yapıştırın, System.Text.Json’a hazır temiz C# record’ları veya sınıfları alın.

Yerelde çalışır · hiçbir şey yüklenmez
Detect
JSON
C#

Ne işe yarar?

Bir JSON belgesi (API yanıtı, yapılandırma dosyası, webhook yükü) yapıştırın ve doğrudan bir .NET projesine yapıştırabileceğiniz C# türlerini alın. Çıktı siz yazarken güncellenir.

Neden “Paste JSON as Classes"tan daha iyi?

  • Yalnızca ilk öğeye değil, dizideki her öğeye bakar. Bazı öğelerde eksik olan veya bazılarında null olan bir özellik nullable olur (int?, string?); bir öğede 1, diğerinde 2.5 olan bir sayı double olur.
  • Gerçek tür çıkarımı: int ya da değer sığmıyorsa long; kesirli sayılar için double veya decimal; bool; Guid; ofset veya Z içeren zaman damgaları için DateTimeOffset, ofsetsiz olanlar için DateTime, düz tarihler için DateOnly. Karışık değerler JsonElement olur.
  • Aynı yapılar bir kez oluşturulur. Aynı özelliklere sahip shippingAddress ve billingAddress tek bir Address türünü paylaşır.
  • Kimliklerle anahtarlanmış nesneler ({"1": {...}, "2": {...}}) Dictionary<string, T> olur.
  • Her zaman geçerli tanımlayıcılar: user_id, UserId olur; rakamla başlayan adlara _ öneki eklenir, C# anahtar sözcükleri @ ile kaçışlanır, sınıf adıyla veya diğer özelliklerle çakışan adlar yeniden adlandırılır.
  • System.Text.Json öznitelikleri yalnızca gerektiğinde eklenir. “Web varsayılanları” ASP.NET Core / JsonSerializerOptions.Web (camelCase) varsayar; “birebir farklıysa” seçeneği büyük/küçük harfe duyarlı varsayılan JsonSerializer’ı da kapsar.
  • Modern C#: init içeren record’lar veya set içeren sınıflar, güvenli başlatıcılarla nullable başvuru türleri, isteğe bağlı required üyeler, dosya kapsamlı ad alanı.

Nasıl kullanılır?

JSON yapıştırın veya bir .json dosyası bırakın, kök tür adını ve ad alanını belirleyin, ardından .cs dosyasını kopyalayın ya da indirin. Durum satırı, kullanmanız gereken JsonSerializer.Deserialize<T> çağrısını gösterir.

Gizlilik

Dönüştürme tamamen tarayıcınızda çalışır. JSON’unuz hiçbir zaman yüklenmez; son girdi yerel depolamada saklanır.