using System.Collections; using System.Collections.Generic; using Newtonsoft.Json; public class JsonResult { private static JsonSerializerSettings DefaultJsonSerializerSettings { get { return new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }; } } public static string Json(bool result) { return string.Format("{{\"success\": {0} }}", result.ToString().ToLower()); } public static string Json(bool result, string key, string value) { return string.Format("{{\"success\": {0}, \"{1}\": {2} }}", result.ToString().ToLower(), key, JsonConvert.SerializeObject(value)); } public static string Json(bool result, string key, int value) { return string.Format("{{\"success\": {0}, \"{1}\": {2} }}", result.ToString().ToLower(), key, value); } public static string Json(bool result, string key, bool value) { return string.Format("{{\"success\": {0}, \"{1}\": {2} }}", result.ToString().ToLower(), key, value.ToString().ToLower()); } public static string Json(bool result, string key, object value) { var e = value as IEnumerable; return string.Format("{{\"success\": {0}, \"{1}\": {2} }}", result.ToString().ToLower(), key, e == null ? value : JsonConvert.SerializeObject(value)); } public static string Json(bool result, Dictionary list) { var s = string.Format("{{\"success\": {0}", result.ToString().ToLower()); foreach (var item in list) s = string.Format("{0}, \"{1}\": {2}", s, item.Key, JsonConvert.SerializeObject(item.Value, Formatting.None, DefaultJsonSerializerSettings)); s += "}"; return s; } }