角度模型定义被Web服务模型取代

时间:2018-03-19 18:13:40

标签: angular typescript asp.net-web-api

我有一个这样的打字稿模型:

import * as moment from 'moment';

export class Activity {
  public id: number;      
  public activityDate: string;      
  public day: number = moment(this.activityDate).dayOfYear();
}

WebApi发送的C#模型如下:

public class Activity
{     
    [JsonProperty("id")]
    public int Id { get; set; }

    [JsonProperty("activityDate")]
    public DateTime ActivityDate { get; set; }
}

我的服务类中的简单response.json()映射。

我的问题是属性day从我的模型消失了。

那么,有什么东西可以声明在打字稿模型上保持完整性吗?或者模型上的任何绑定也检索结构?

1 个答案:

答案 0 :(得分:1)

您需要从response.json()电话进行映射,日期属性不会自动计算,这里提出建议:

export interface Activity {
  id: number;
  activityDate: string;
  day?: number;
}
export const mapActivityFromServer(d => ({
  ...d,
  day: moment(d.activityDate).dayOfYear()
}));