0

ここで少し問題が発生しました。ディクショナリをシリアライズしたいのですが、含まれている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をシリアライズしたくありません。文字列がほとんど含まれておらず、物事がめちゃくちゃになっているためです。stringintegers\r\n

stringsだから、 andをスキップしたいのですintegersが、辞書にはDateTimeetc などが含まれている可能性があります。例として、文字列と整数のみを指摘しています。

entity classesディクショナリには、独自のカスタム クラス、、、、、integersなどが含まれています。独自のカスタム クラスとエンティティ クラスをシリアル化するだけです。stringsdate timeJSON.NET

任意の助けをいただければ幸いです。

4

1 に答える 1

0

シリアル化する前に、たとえばアセンブリによって辞書をフィルタリングできます。

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);
于 2013-03-16T14:09:20.220 に答える