internal string ToJson() { var di = new DataItem(); if (String.IsNullOrEmpty(Message)) { Message = "The request is invalid"; } di.Set("Message", Message); var ms = new DataItem(); var add = false; foreach (var item in _errors) { ms.Set(item.Key, item.Value.ToArray()); add = true; } if (add) { di.Set("ModelState", ms); } return(di.ToJson()); }
private static void PerformInsertOrUpdateOrDelete(WebResponse Response, ViewModel vmc, bool allowed, string name, Func <DataItem> action) { if (!allowed) { MethodNotAllowed(Response, vmc, name); return; } DataItem r = null; try { r = action(); } catch (NotFoundException) { vmc.ModelState.ApplyNotFound(Response); return; } catch (Firefly.Box.Data.DataProvider.DatabaseErrorException ex) { vmc.ModelState.AddError(ex.ErrorType.ToString()); } catch (Exception ex) { vmc.ModelState.AddError(ex); } if (!vmc.ModelState.IsValid) { Response.Write(vmc.ModelState.ToJson()); Response.StatusCode = 400; } else if (r != null) { Response.Write(r.ToJson()); } }