Angular 5区分大小写

时间:2018-09-10 20:34:36

标签: angular rest pojo

我有一个Angular应用,该应用由使用web-api2创建的RESTful Web服务提供。

api包含以下类:

 public class PropertyDto {
  public Guid Guid { get; set; }
    public PropertyType PropertyType { get; set; }
    public TransactionStatus ? TransactionStatus { get; set; }
    public bool ? IsNewHome { get; set; }
    ...other stuff....
}

我将这个类转换为我的有角度应用程序的打字稿类,并将其称为Property。我将填充此类以发布到服务,并希望将响应数据映射到此类。

当我构建对象并将其发送到服务器时,一切都能按预期工作,但是我的问题是,当我收到响应时,映射的对象都是小写字母。

我非常简单地构建对象,如下所示:

var property = new Property();
property.Guid = "some-guid-value";
property.PropertyType = PropertyType.Default
....etc....

发布的json在下面

{
   "Guid":"some-guid-value",
   "PropertyType":"0",
   ....etc....
}

我将响应映射如下:

@Injectable()
export class PropertyService {
  getProperty(id: string): Observable<Property> {
    this.property += this.agentId + "/" + id;
    return this.http.get<Property>(this.property);
  }
}

export class PropertyFormMapperComponent implements OnInit {
  ngOnInit(): void {
    this._propertyService.getProperty(this._id).subscribe(property => {
      //here the properties of the property class are all lowercase
      //example below
    });
  }
}

示例响应

guid: "some-guid-value"
transactionStatus: 1
...etc...

管理这种情况的最佳方法是什么。

我考虑过的事情

  1. 将类属性更改为小写
  2. 更改服务以返回首字母大写的json对象
  3. 将每个属性的首字母大写为返回给客户端时的响应
  4. 具有用于请求和响应的类

为什么我没有完成上述任何操作

  1. 无法正常工作,因为当我发送到服务器时它不会映射
  2. 我不应该因客户限制而更改服务
  3. 感觉很hacky
  4. 我不要重复的课,并且大小写不一致

最后我觉得我应该指出,我在这一领域的知识有限,因此任何建议都将得到赞赏。

0 个答案:

没有答案