Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 1794|Jawab: 7

[Kiat] Beberapa tips tentang System.Text.Json memanipulasi JSON

[Salin tautan]
Dipaparkan pada 2024-11-25 08:39:50 | | | |
Sebelum .NET Core 3.1, kami memiliki dukungan untuk serialisasi dan deserialisasi objek dengan memerlukan referensi ke paket pihak ketiga seperti Newtonsoft.Json, dan sekarang .NET sudah memiliki dukungan bawaan untuk operasi JSON. Namespace System.Text.Json menyediakan fungsionalitas untuk menserialisasi dan mendeserialisasi notasi objek JavaScript (JSON). Pustaka System.Text.Json disertakan.NET Core 3.1 dan runtime yang lebih baruTengah.

JsonSerializerOptions thread aman

Jika Anda lulusOpsi yang samaJika Anda menggunakan kembali JsonSerializerOptions, jangan membuat instans baru JsonSerializerOptions setiap kali Anda menggunakannya. Gunakan kembali instans yang sama untuk setiap panggilan. Panduan ini berlaku untuk kode yang Anda tulis untuk transformator kustom Anda, serta saat Anda memanggil JsonSerializer.Serialize atau JsonSerializer.Deserialize. Aman untuk menggunakan instance yang sama di beberapa utas. Cache metadata pada instans opsi aman untuk utas, dan instans tidak dapat diubah setelah serialisasi atau deserialisasi pertama.

Referensi:Login hyperlink terlihat.

Serialisasi dan deserialisasi

Kodenya adalah sebagai berikut:



Menggunakan konfigurasi JSON di ASP.NET Core

Jika Anda ingin menggunakan konfigurasi global JSON di ASP.NET Core, Anda dapat menyuntikkan hal berikut di konstruktor:

Gunakan versi web untuk mengonfigurasi skenario

Pencacahan JsonSerializerDefaults menentukan opsi serialisasi default berbasis skenario yang dapat digunakan untuk membuat instans JsonSerializerOptions.

Kodenya adalah sebagai berikut:




Referensi:Login hyperlink terlihat.





Mantan:Windows Server {xxx} tidak mendaftar ke DCOM dalam batas waktu yang diperlukan.
Depan:Halaman web front-end menjalankan fungsi di wasm dengan 3 cara
 Tuan tanah| Dipaparkan pada 2024-12-18 19:07:36 |
Gunakan JsonNode untuk membaca nilai string JSON

Terkadang, kita mungkin hanya perlu membaca nilai dalam string JSON, membuat objek baru, dan kemudian mendeserialisasikannya ke dalam objek ini lebih merepotkan, Anda dapat langsung menggunakan JsonNode untuk membaca nilai string JSON, kodenya adalah sebagai berikut:



 Tuan tanah| Dipaparkan pada 2024-12-30 13:29:28 |
Diserialkan sebagai array byte UTF-8 (Utf8Bytes)

Serialisasi sebagai array byte UTF-8 lebih penting daripada menggunakan pendekatan berbasis string5-10% lebih cepat。 Ini karena byte (UTF-8) tidak perlu dikonversi menjadi string (UTF-16).

Untuk membuat serial ke array byte UTF-8, panggil metode JsonSerializer.SerializeToUtf8Bytes:


Login hyperlink terlihat.
 Tuan tanah| Dipaparkan pada 2025-1-2 09:04:00 |
Gunakan System.Text.Json untuk menghapus data dengan string sebagai null atau "", deserialisasi string json ke dalam objek objek, jika ada ratusan bidang, banyak di antaranya dicatat sebagai null, untuk menyimpan transfer, bidang ini dapat dihapus. System.Text.Json mendeserialisasi string json ke dalam System.Text.Json.JsonElement.



Kodenya adalah sebagai berikut:



JsonObject tidak menghormati JsonIgnoreCondition.WhenWritingNull:Login hyperlink terlihat.
 Tuan tanah| Dipaparkan pada 2025-2-18 13:53:03 |
Gunakan JsonObject untuk membuat objek secara langsung dan menerialisasikannya menjadi string json, seperti yang ditunjukkan pada gambar berikut:



Kode:

 Tuan tanah| Dipaparkan pada 2025-2-28 09:17:31 |
Oleh [JsonPropertyNameuntuk menyesuaikan nama serialisasi bidang



 Tuan tanah| Dipaparkan pada 2025-11-19 14:40:03 |
Menggunakan JsonNode untuk mendapatkan objek koleksi string Json

Kode:

 Tuan tanah| Diposting pada4 hari yang lalu |
Objek array diserialisasikan menjadi string JSON



Kode:
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com