I'm relatively new to C# and am currently trying to serialize a string in JSON so it basically looks like this:
{ "firstname": "John", "lastname": "Smith", "address": { "street": "1 Main Street", "city": "London", "postcode": "A12 3AB" } }
I currently have the following code:
AddressValues addressStr = new AddressValues();
addressStr.street = "1 Main Street";
addressStr.city= "London";
addressStr.postcode = "A12 3AB";
string addressJson = JsonConvert.SerializeObject(addressStr);
PersonValues personDetails = new PersonValues();
personDetails.firstname = "John";
personDetails.lastname = "Smith";
personDetails.address = addressJson ;
string jsonContent = JsonConvert.SerializeObject(personDetails);
And the classes...
public class AddressValues
{
public string street;
public string city;
public string postcode;
}
public class PersonValues
{
public string firstname;
public string lastname;
public string address;
}
When I run the script the console displays the following:
{ "firstname": "John", "lastname": "Smith", "address": "{\"street\":\"1 Main Street\", \"city\":\"London\", \"postcode\": \"AB12 3AB\"}"}
Can anyone point out how I can go around amending this please? I'm assuming having a backslash means that it ignores the quotation mark?
Thanks