public static JNode BuildMapNode <T>(IDictionary <String, T> map) { var jn = new JNode(); map.ForEach(kvp => { var val = CvtValue(kvp.Value); if (val != null) { if (val is JToken) { jn.AddRaw(kvp.Key, (JToken)val); } else { jn.AddRaw(kvp.Key, new JValue(val)); } } else { jn.AddRaw(kvp.Key, null); } }); return(jn); }