使用Rxjs map函数时如何保留对象属性大小写

时间:2016-12-23 07:54:00

标签: angular rxjs angular2-http

我是Angular2的新手,并使用http服务从asp.net mvc webapi获取数据 API返回的数据格式如下所示

RequestResponse{
    public string Message {get;set;}
    public int Status {get;set;} 
}

Http get请求获取数据并从map Rxjs转移到map(result => result.json())函数,该函数将结果转换为格式,如下所示

{
    message : 'success!',
    status : 1
}

如您所见,输出属性名称已失去区分大小写 从其他SO问题中读取我们必须编写自己的映射器函数以保持区分大小写 我的疑问是,是否可以从Rxjs配置映射器功能以保持区分大小写?或者我们应该编写自己的映射器函数?

编辑:问题似乎来自.json()(?)为什么.json()会将属性名称转换为小写?

编辑: 解决方案:感谢@Sergey clue。问题来自.Net Core,它默认将属性名称转换为camelCase。如果有人搜索解决方案,请访问Github page

1 个答案:

答案 0 :(得分:4)

Map是一个简单的函数,允许您转换数据。它非常适合您的需求:

request.map(response => {
  let data = response.json();
  return <RequestResponse> {
    Message: data.message,
    Status: data.status
  };
});