I have a JObject that I am trying to add fields to in a way like this:
JObject dataObject = new JObject();
dataObject[currentSection][key] = val;
currentSection
, key
and val
are all strings, I want it so when its all serialized at the end that it looks something like this:
{
"currentSection": {
"key": "value"
}
}
How would I go about doing this?
CodePudding user response:
You can use JObject.Add()
method to add a property to JObject
.
Create a
JObject
for the nested object.Add property to the nested object.
Add property with nested object to root
JObject
.
JObject dataObject = new JObject();
JObject nestedObj = new JObject();
nestedObj.Add(key, val);
dataObject.Add(currentSection, nestedObj);
CodePudding user response:
you have to create a nested currentSection json object before assigning key to currrentSection
string currentSection = "currentSection";
string key = "key";
string val = "val";
JObject dataObject = new JObject();
dataObject[currentSection] = new JObject();
dataObject[currentSection][key] = val;
var json = dataObject.ToString();
json
{
"currentSection": {
"key": "val"
}
}