如何在Json.Net中设置QuoteName设置?

如何在Json.Net中设置QuoteName设置?,json,json.net,settings,Json,Json.net,Settings,首先,我知道它不是有效的JSON格式,但这是我的客户web服务设置,我需要将JSON.Net JsonTextWriter的QuoteName设置为false,但我不知道如何正确执行。这是我的尝试: foreach (var c in a) { var jsonobjects = JsonConvert.SerializeObject(c, new JsonTextWriter { QuoteName = false }

首先,我知道它不是有效的JSON格式,但这是我的客户web服务设置,我需要将JSON.Net JsonTextWriter的QuoteName设置为false,但我不知道如何正确执行。这是我的尝试:

foreach (var c in a)
  {
    var jsonobjects = JsonConvert.SerializeObject(c, new JsonTextWriter
       {
           QuoteName = false
        }
      );
    //Some code that using serialized json object
   }
为了澄清我想要什么。我需要有没有引号的Json属性名。类似于:{Property:“Value”}。

以下是一个示例:

班级:

public class Address
{
    public string Street { get; set; }

    public uint Number { get; set; }

    public string City { get; set; }

    public string ZipCode { get; set; }

    public string State { get; set; }

    public string Country { get; set; }
}
var address = new Address
    {
        Street = "Fulton Street",
        Number = 100,
        City = "New York",
        ZipCode = "10038",
        State = "NY",
        Country = "USA"
    };

var serializer = new JsonSerializer();
var stringWriter = new StringWriter();
using (var writer = new JsonTextWriter(stringWriter))
{
     writer.QuoteName = false;
     serializer.Serialize(writer, address);
}

var json = stringWriter.ToString();

Console.WriteLine(json);
{
    Street: "Fulton Street",
    Number: 100,
    City: "New York",
    ZipCode: "10038",
    State: "NY",
    Country: "USA"
}
序列化逻辑:

public class Address
{
    public string Street { get; set; }

    public uint Number { get; set; }

    public string City { get; set; }

    public string ZipCode { get; set; }

    public string State { get; set; }

    public string Country { get; set; }
}
var address = new Address
    {
        Street = "Fulton Street",
        Number = 100,
        City = "New York",
        ZipCode = "10038",
        State = "NY",
        Country = "USA"
    };

var serializer = new JsonSerializer();
var stringWriter = new StringWriter();
using (var writer = new JsonTextWriter(stringWriter))
{
     writer.QuoteName = false;
     serializer.Serialize(writer, address);
}

var json = stringWriter.ToString();

Console.WriteLine(json);
{
    Street: "Fulton Street",
    Number: 100,
    City: "New York",
    ZipCode: "10038",
    State: "NY",
    Country: "USA"
}
输出:

public class Address
{
    public string Street { get; set; }

    public uint Number { get; set; }

    public string City { get; set; }

    public string ZipCode { get; set; }

    public string State { get; set; }

    public string Country { get; set; }
}
var address = new Address
    {
        Street = "Fulton Street",
        Number = 100,
        City = "New York",
        ZipCode = "10038",
        State = "NY",
        Country = "USA"
    };

var serializer = new JsonSerializer();
var stringWriter = new StringWriter();
using (var writer = new JsonTextWriter(stringWriter))
{
     writer.QuoteName = false;
     serializer.Serialize(writer, address);
}

var json = stringWriter.ToString();

Console.WriteLine(json);
{
    Street: "Fulton Street",
    Number: 100,
    City: "New York",
    ZipCode: "10038",
    State: "NY",
    Country: "USA"
}
示例:

public class Address
{
    public string Street { get; set; }

    public uint Number { get; set; }

    public string City { get; set; }

    public string ZipCode { get; set; }

    public string State { get; set; }

    public string Country { get; set; }
}
var address = new Address
    {
        Street = "Fulton Street",
        Number = 100,
        City = "New York",
        ZipCode = "10038",
        State = "NY",
        Country = "USA"
    };

var serializer = new JsonSerializer();
var stringWriter = new StringWriter();
using (var writer = new JsonTextWriter(stringWriter))
{
     writer.QuoteName = false;
     serializer.Serialize(writer, address);
}

var json = stringWriter.ToString();

Console.WriteLine(json);
{
    Street: "Fulton Street",
    Number: 100,
    City: "New York",
    ZipCode: "10038",
    State: "NY",
    Country: "USA"
}