【问题标题】:how to use Jsonconvert with multiple nodes and arrays of nodes如何将 Jsonconvert 与多个节点和节点数组一起使用
【发布时间】:2018-02-06 02:26:18
【问题描述】:

目前,我可以通过数据集检索数据库值,并使用 c# 中的 JSONCOnvert.serialize() 将它们放入基本的 JSON 格式,但我需要生成所有节标题、分区、数组中的数组等。每个部分都是一个类和类列表?但是我如何制作节标题和标题“mainSection”,以及像不同客户端一样的值中的数组?

目前不使用牛顿。

我需要从数据库值生成这样的文件:

{
  "mainSection": [
    {
      "section1":
        [
          "curr_month"  : "February",
          "curr_year"   : "2018",
          "todays_date" : "02-02-2018",
          "dates" :
            [
                "29",
              "30",
              "31",
              "01",
              "02",
              "03",
              "04"
            ]

        ]
    },
    {
      "section2" :
        [
          "date_range_start" : "02-01-2018", //the range for kpi's is always from the 1st day of the month through yesterday
          "date_range_end" : "02-01-2018"
        ]
    },
    {
      "section3" :
        [
          "date_range_start" : "2-1-2018",
          "date_range_end" : "2-28-2018",
          "title" :
            {
              "count" : "225",
              "percentage" : "0"
            },
          "asecondtitle" :
            {
              "count" : "2645233",
              "percentage" : "9"
            },
          "athirdtitle" :
            {
              "count" : "437371",
              "percentage" : "7"
            }
        ]
    },
    {
      "section4" :
        [
          "title" : "Today'",
          "total_tile_count" : 4,
          "listofclients" :
            [
              {
                 "client_id" : "123456" 
                "type" : "walkin",
                "otherdata" : 13,
                "client_name" : "Client P0opyface",
                 "appointment_times":
                [
                    {
                        "scheduled_room" : "Room A", //sometimes they change operating rooms within the same day
                        "start_time" : "07:00",
                        "end_time" : "07:15"
                    },
                    {
                        "scheduled_room" : "Room B",
                        "start_time" : "07:15",
                        "end_time" : "07:30"
                    },
                    {
                        "scheduled_room" : "Room C",
                        "start_time" : "07:30",
                        "end_time" : "07:45"
                    }                   
                ]
              },
              {
                  "client_id" : "789" 
                "type" : "walkin",
                "otherdata" : 13,
                "client_name" : "Client Stinkyface",
                 "appointment_times":
                [
                    {
                        "scheduled_room" : "Room D", //sometimes they change operating rooms within the same day
                        "start_time" : "07:00",
                        "end_time" : "07:15"
                    },
                    {
                        "scheduled_room" : "Room E",
                        "start_time" : "07:15",
                        "end_time" : "07:30"
                    },
                    {
                        "scheduled_room" : "Room F",
                        "start_time" : "07:30",
                        "end_time" : "07:45"
                    },
{
                        "scheduled_room" : "Room G",
                        "start_time" : "08:30",
                        "end_time" : "08:45"
                    }                   
                ]
              },
              {
                "client_id" : "8675309" 
                "type" : "repeat",
                "otherdata" : 13,
                "client_name" : "Client Donkeybutt",
                 "appointment_times":
                [
                    {
                        "scheduled_room" : "Room H", //sometimes they change operating rooms within the same day
                        "start_time" : "07:00",
                        "end_time" : "07:15"
                    },
                    {
                        "scheduled_room" : "Room I",
                        "start_time" : "07:15",
                        "end_time" : "07:30"
                    }
                ]
              }
            ]
        ]
    }

  ]

}

【问题讨论】:

    标签: c# sql .net json writetofile


    【解决方案1】:

    我从未见过这种格式,我也无法创建:

    {
        "section1": [
            "curr_month" : "February",
            "curr_year" : "2018",
            "todays_date" : "02-02-2018"
        ]
    }
    

    所以,要么你的意思是:

    {
        "section1": {
            "curr_month": "February",
            "curr_year": "2018",
            "todays_date": "02-02-2018"
        }
    }
    

    当属性“section1”是用户定义的类或字典时

    或者这个:

    {
        "section1": [
            {
                "curr_month": "February",
                "curr_year": "2018",
                "todays_date": "02-02-2018"
            }
        ]
    }
    

    当属性“section1”是用户定义类或字典的数组时

    所以,如果这是一个偶然的错字,我会说使用一个构造良好的类是你最好的选择,除非这个 JSON 格式正是你真正想要的。在这种情况下,据我所知,您可以使用字符串连接来构造格式。

    【讨论】:

      猜你喜欢
      • 2012-10-09
      • 2015-02-18
      • 1970-01-01
      • 2020-12-11
      • 2022-10-03
      • 2018-12-03
      • 2018-10-20
      • 2015-11-30
      • 2018-10-24
      相关资源
      最近更新 更多