开发项目框架为.net framework,遇到此问题原因是笔者在做接口转发时接口返回类型直接定义为了object类型,这导致格式化返回结果时出现如标题异常,具体代码如下

try
{
var result = XXXWepApi.WebApiPost<请求参数类, object>("api/xxx接口地址", new 请求参数类());
if (result != null)
{
if (result.Code == "200")
return SuccessResult(result.Data);
else
return ErrorResult("列表获取失败!", 10001);
}
else
return ErrorResult("列表为空!", 10002);
}
catch (Exception ex)
{
Function.WriteErrorLog(ex);
return ErrorResult("系统繁忙,请重新获取!", 10050);
}

解决代码如下:转换抛出异常是因为自定义格式化方法格式化返回SuccessResult(result.Data)时抛出错误,result.Data返回时一个字符串数组,定义一个返回类即可皆解决,代码如下

try
{
var result = XXXWepApi.WebApiPost<请求参数类, 【定义返回类】>("api/xxx接口地址", new 请求参数类());
if (result != null)
{
if (result.Code == "200")
return SuccessResult(result.Data);
else
return ErrorResult("列表获取失败!", 10001);
}
else
return ErrorResult("列表为空!", 10002);
}
catch (Exception ex)
{
Function.WriteErrorLog(ex);
return ErrorResult("系统繁忙,请重新获取!", 10050);
}

关于SuccessResult方法如下

/// <summary>
/// 返回成功信息
/// </summary>
/// <param name="data">附加内容</param>
/// <param name="msg">成功信息</param>
/// <returns>返回Result格式信息</returns>
[NonAction]
public HttpResponseMessage SuccessResult(object data = null, string msg = "成功")
{
return new HttpResponseMessage
{
Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(new ResultV2<object>()
{
Code = 200,
Msg = msg,
Data = data == null ? new { } : data
}), System.Text.Encoding.UTF8, "application/json")
};
}

最新文章

  1. OpenGL利用模板测试实现不规则裁剪
  2. mave web常用配置文件参数
  3. EF – 3.EF数据查询基础(下)数据关联
  4. checkbox 设置不可更改
  5. WPF学习(一)--布局控件简介
  6. ImportError: cannot import name &#39;NUMPY_MKL&#39;
  7. C++实现简单的内存池
  8. jvm 参数调优
  9. 栈(链式存储) C++模板实现
  10. iPhone应用中如何避免内存泄露?
  11. Mono For Android离线激活
  12. Which PHP mode? Apache vs CGI vs FastCGI
  13. 如何按内容筛选dom
  14. 将域名转移到 Google Domains
  15. Javascript跳转页面和打开新窗口等方法
  16. 学习笔记CB007:分词、命名实体识别、词性标注、句法分析树
  17. iOS------自动查找项目中不用的图片资源
  18. OpenGL——三维多面体实现
  19. 分布式系统一致性协议--Paxos算法
  20. Beta阶段团队项目开发篇章4

热门文章

  1. .NET周报【11月第2期 2022-11-15】
  2. RobotFrameWork基础一
  3. 森林野火故事2.0:一眼看穿!使用 Panel 和 hvPlot 可视化 ⛵
  4. &lt;一&gt;继承的基本意义
  5. 命令查询职责分离 - CQRS
  6. Dart语言简介
  7. 【每日一题】【哈希表,返回结果的下标】2022年1月18日-NC61 两数之和
  8. 2022年Kubernetes CKA 认证真题解析完整版
  9. C语言条件语句中调用函数并赋值时的一个小坑
  10. 填坑日志-云网络智慧课堂双网卡Mac地址读取错误的问题及解决