Attempted json

CSharp · Console

/Program.cs

using System;
using Newtonsoft.Json;
using System.Collections.Generic;

public class CreateDocument
{
    public static void Main(string[] args)
    {
        Console.WriteLine("Inline   : " + ConvertToJson());
        Console.WriteLine("Expanded : " + JsonConvert.DeserializeObject(ConvertToJson()));
    }

    public class Field
    {
        public string Name { get; internal set; }

        public FieldValues MyField { get; internal set; }

        public class FieldValues
        {
            public string Value { get; internal set; }

            public string Key { get; internal set; }

            public FieldValues(string value, string key)
            {
                Value = value;
                Key = key;
            }
        }

        public Field(string name, FieldValues myField)
        {
            Name = name;
            this.MyField = myField;
        }
    }

    private class Document
    {
        //other properties ...
        
        public List<Field> Fields { get; internal set; }
    }

    internal static string ConvertToJson()
    {
        Document document = new Document();

        List<Field> myFields = new List<Field>();
        
        //pretend foreach (){...}
        myFields.Add(new Field("field1", new Field.FieldValues("value1", "value2")));
        myFields.Add(new Field("field2", new Field.FieldValues("value3", "value4")));

        document.Fields = myFields;
        return JsonConvert.SerializeObject(document);
    }
}
;