首页 > 代码库 > ASP.NET MVC ajax处理 AjaxResult
ASP.NET MVC ajax处理 AjaxResult
1、统一ASPNET MVC 对ajax请求响应格式定义,方便前端统一处理ajax结果.
1)定义程序返回结果数据格式
1 /// <summary> 2 /// 执行结果 3 /// </summary> 4 /// <typeparam name="T"></typeparam> 5 public class RunResult<T> 6 { 7 /// <summary> 8 /// 操作状态 9 /// </summary>10 public ResultStatus Status { get; set; }11 /// <summary>12 /// 操作异常13 /// </summary>14 public Exception Exception { get; set; }15 /// <summary>16 /// 数据结果17 /// </summary>18 public T Result { get; set; }19 /// <summary>20 /// 操作消息21 /// </summary>22 public string Message { get; set; }23 }
2)定义执行结果状态
/// <summary> /// 执行结果 /// </summary> /// <typeparam name="T"></typeparam> public class RunResult<T> { /// <summary> /// 操作状态 /// </summary> public ResultStatus Status { get; set; } /// <summary> /// 操作异常 /// </summary> public Exception Exception { get; set; } /// <summary> /// 数据结果 /// </summary> public T Result { get; set; } /// <summary> /// 操作消息 /// </summary> public string Message { get; set; } }
3)返回前端数据格式
public class AjaxEntity<T> { [JsonProperty(PropertyName = "Success")] public bool Success { get; set; } [JsonProperty(PropertyName = "Message")] public string Message { get; set; } [JsonProperty(PropertyName = "Data")] public T Data { get; set; } }
4)定义asp.net mvc 中 ajax ActionResult
public class AjaxResult<T> : CustomResult<AjaxEntity<T>> { private readonly RunResult<T> _runResult; public AjaxResult(RunResult<T> runResult) { _runResult = runResult; } /// <summary> /// /// </summary> /// <returns></returns> public override AjaxEntity<T> GetObject() { AjaxEntity<T> entity = new AjaxEntity<T> { Data =http://www.mamicode.com/ _runResult.Result }; if (_runResult.Result is bool) { entity.Success = _runResult.Status == ResultStatus.Success && Convert.ToBoolean(_runResult.Result); } else { entity.Success = _runResult.Status == ResultStatus.Success; } entity.Data = _runResult.Result; entity.Message = _runResult.Message; return entity; } }
ASP.NET MVC ajax处理 AjaxResult
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。