[英]How to avoid converting date to string when object cames from web API
如果您需要服務器端(看起來像C#)或客戶端(javascript)方面的幫助,我會感到困惑
不管哪種方式,一種方法就是編寫一個自定義的setter或具有一個將Web api中的數據映射到該類的map函數。
我沒有測試此代碼,但其想法是要有一個解析器來解析日期。
服務器/ C#代碼:
public class TestClass {
private DateTime paymentdate
public DateTime? PaymentDate {
get {
return paymentdate
}
set {
this.paymentdate = DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture)
}
}
}
我還沒有測試過C#代碼,但是它應該為您提供正確的方向。
在客戶端(javascript /打字稿)上,您可以執行以下操作。
export class TestClass {
private _paymentdate: Date;
get paymentDate(): Date {
return this._paymentDate
}
set paymentDate(value: string) {
this._paymentDate = new Date(value);
}
}
此處的解析在設置器中進行。 因此,您避免在代碼中檢索值。
然后,您將執行以下操作:
let myTestClass = new TestClass();
request.get('pathtoapi').then(function(result) {
myTestClass.paymentDate = result.payment.paymentDate
})
您可以將響應包裝在Date對象中
嘗試
var responsePaymentDate = new Date(this.payment.paymentDate);
現在您將可以在此對象上調用get,set函數
希望這可以幫助 !
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.