using System.Linq; using System.Web.Mvc; using InventoryTraker.Web.ActionResults; namespace InventoryTraker.Web.Controllers { public abstract class ControllerBase : Controller { public BetterJsonResult BetterJson(T model) { return new BetterJsonResult() {Data = model}; } protected JsonResult PackageModelStateErrors() { var betterJsonResult = new BetterJsonResult(); foreach (var err in ModelState.Where(ms => ms.Value.Errors.Any())) { betterJsonResult.AddError( err.Key + ": " + string.Join(", ", err.Value.Errors.Select(e => e.ErrorMessage))); } return betterJsonResult; } } }