/// <summary> /// load json from a filestream into a dictionary /// </summary> /// <param name="stream">The s.</param> /// <returns></returns> public static Dictionary <string, object> Deserialize(Stream stream) { using (var reader = new StreamReader(stream)) { using (var jsonReader = new JsonTextReader(reader)) { var ser = JsonSerializerExtras.CreateWithNoPrivateItemsResolver(); var ret = ser.Deserialize <Dictionary <string, object> >(jsonReader); return(ret); } } }
/// <summary> /// Serialises the specified json. /// </summary> /// <param name="dictionary">The dictionary.</param> /// <param name="json">The json.</param> /// <param name="fs">The fs.</param> /// <param name="obeyDataContracts">if set to <c>true</c> [obey data contracts].</param> public static void Serialise(this Dictionary <string, object> dictionary, JsonSerializer json, FileStream fs, bool obeyDataContracts) { //erase fs.SetLength(0); using (var writer = new StreamWriter(fs)) { using (var jsonWriter = new JsonTextWriter(writer)) { var ser = obeyDataContracts ? new JsonSerializer() : JsonSerializerExtras.CreateWithNoPrivateItemsResolver(); ser.Serialize(jsonWriter, dictionary); jsonWriter.Flush(); } } }