在下面的代码行中,string x当clInitializer.AVOptions = null值为:时,我最终成为实际字符串"null" :
string x = JsonConvert.SerializeObject(clInitializer.AVOptions, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore});
Run Code Online (Sandbox Code Playgroud)
如实际的单词"null"而不是null值或者也许{}.我不确定这是预期的行为.有谁知道如何让它不返回"null"这个词,或者我对如何JsonConvert运作有一些根本的误解.先感谢您.
请为我澄清一些困惑:我有一个 JSON 字符串,我试图将它粘贴到一个对象中,但我只想接收顶层,并将下面的所有内容视为 blob 或字符串。像这样的东西。
这是我的模型:
public class InputJson
{
[JsonProperty(PropertyName = "signals")]
public string signals{ get; set; }
[JsonProperty(PropertyName = "options")]
public string options { get; set; }
[JsonProperty(PropertyName = "fields")]
public string fields{ get; set; }
[JsonProperty(PropertyName = "lapse")]
public string lapse{ get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试将 JSON 字符串(见下文)反序列化,如下所示:
InputJson a = JsonConvert.DeserializeObject<InputJson>(body);
Run Code Online (Sandbox Code Playgroud)
我希望这 a.signals会返回一个字符串,所有内容都在“信号”下方和“选项”之前,但它失败了,因为它试图继续并序列化其下方的所有内容。我得到一个JsonReaderException:
读取字符串时出错。意外标记:StartArray。路径“信号”,第 1 行,位置 12。
我尝试玩弄JsonSerializerSettings(例如将 maxDepth 设置为 1),但没有任何帮助。任何人?
我的 JSON 字符串:
{
"signals":
[
{
"name":"1",
"att1":"44",
"att2":"0", …Run Code Online (Sandbox Code Playgroud)