Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Menukar Rentetan JSON ke Senarai Objek C# Menggunakan JSON.NET?

Bagaimana untuk Menukar Rentetan JSON ke Senarai Objek C# Menggunakan JSON.NET?

Mary-Kate Olsen
Lepaskan: 2025-01-04 19:43:40
asal
903 orang telah melayarinya

How to Convert a JSON String to a C# Object List Using JSON.NET?

Tukar Rentetan JSON kepada Senarai Objek C# Menggunakan JSON.NET

Ramai pembangun menghadapi keperluan untuk menukar rentetan JSON kepada objek C# untuk manipulasi dan pemprosesan data. Tugas ini boleh dipermudahkan dengan bantuan JSON.NET, sebuah perpustakaan popular untuk bekerja dengan data JSON dalam aplikasi .NET.

Andaikan anda mempunyai rentetan JSON yang mengandungi tatasusunan objek. Objek dalam tatasusunan ini mempunyai sifat khusus yang sepadan dengan sifat kelas C# yang ditentukan, dikenali sebagai MatrixModel. Untuk menukar rentetan JSON ini kepada senarai objek MatrixModel, anda boleh mengikuti langkah berikut:

  1. Tukar JSON kepada Kelas: Lawati json2csharp.com, tapak web yang membolehkan anda menukar Data JSON ke dalam kelas C#. Tampalkan rentetan JSON ke dalam kotak yang disediakan dan jana kod.
  2. Deserialize JSON: Menggunakan JSON.NET Newtonsoft, nyahsiri rentetan JSON ke dalam senarai objek MatrixModel:
var matrixModelList = JsonConvert.DeserializeObject<List<MatrixModel>>(json);
Salin selepas log masuk

Contoh JSON:

    "[
      {
        "Question": {
          "QuestionId": 49,
          "QuestionText": "Whats your name?",
          "TypeId": 1,
          "TypeName": "MCQ",
          "Model": {
            "options": [
              {
                "text": "Rahul",
                "selectedMarks": "0"
              },
              {
                "text": "Pratik",
                "selectedMarks": "9"
              },
              {
                "text": "Rohit",
                "selectedMarks": "0"
              }
            ],
            "maxOptions": 10,
            "minOptions": 0,
            "isAnswerRequired": true,
            "selectedOption": "1",
            "answerText": "",
            "isRangeType": false,
            "from": "",
            "to": "",
            "mins": "02",
            "secs": "04"
          }
        },
        "CheckType": "",
        "S1": "",
        "S2": "",
        "S3": "",
        "S4": "",
        "S5": "",
        "S6": "",
        "S7": "",
        "S8": "",
        "S9": "Pratik",
        "S10": "",
        "ScoreIfNoMatch": "2"
      },
      {
        "Question": {
          "QuestionId": 51,
          "QuestionText": "Are you smart?",
          "TypeId": 3,
          "TypeName": "True-False",
          "Model": {
            "options": [
              {
                "text": "True",
                "selectedMarks": "7"
              },
              {
                "text": "False",
                "selectedMarks": "0"
              }
            ],
            "maxOptions": 10,
            "minOptions": 0,
            "isAnswerRequired": false,
            "selectedOption": "3",
            "answerText": "",
            "isRangeType": false,
            "from": "",
            "to": "",
            "mins": "01",
            "secs": "04"
          }
        },
        "CheckType": "",
        "S1": "",
        "S2": "",
        "S3": "",
        "S4": "",
        "S5": "",
        "S6": "",
        "S7": "True",
        "S8": "",
        "S9": "",
        "S10": "",
        "ScoreIfNoMatch": "2"
      }
    ]"
Salin selepas log masuk

Contoh Objek Deserialized:

var model = JsonConvert.DeserializeObject<List<MatrixModel.RootObject>>(json);
Salin selepas log masuk

Kini, anda boleh dengan mudah menggunakan senarai MatrixModel yang dinyahsiri, mengakses dan memanipulasi data seperti yang diperlukan dalam aplikasi C# anda.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan JSON ke Senarai Objek C# Menggunakan JSON.NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan