Newtonsoft json.net跳过字符串或整数



这里有点小问题,我要序列化一个字典,它包含string, integers, object

现在我正在遍历字典

 var data ="";
 foreach (var dict in dictObject)
 {
    var value = JsonConvert.SerializeObject(dict.value, Formatting.Indented,new JsonSerializerSettings()
     {
        ReferenceLoopHandling = ReferenceLoopHandling.Ignore,
        Converters = new List<JsonConverter>
                    {
                      new IsoDateTimeConverter(){DateTimeFormat = "yyyy-MM-dd hh:mm:ss"}    
                    }
      });
    data += dict.key +"="+ value;
 }

现在我不希望Json.Net序列化该字典中的string, integers。因为很少有字符串包含rn,并且那里的事情变得混乱。

所以我希望它跳过stringsintegers,但字典可能包含DateTime等东西。我只指出字符串和整数作为例子。

字典包含我自己的自定义类,entity classes, integers, strings, date time等。我只想让JSON.NET序列化我自己的自定义类和实体类。

您可以在序列化字典之前对其进行过滤,例如通过Assembly:

var customTypesAssembly = typeof(CustomClass).Assembly;
var filteredDictionary = dictionary.Where(x => x.Value.GetType().Assembly == customTypesAssembly)
    .ToDictionary(x => x.Key, x => x.Value);
var json = JsonConvert.SerializeObject(filteredDictionary);

相关内容

  • 没有找到相关文章

最新更新