我正在使用適用於Android的Azure移動應用程序SDK。從Android發送DateTimeOffset到.NET Web API
public class MyClass {
public String Id;
public String Code;
public DateTimeOffset ClientCreatedAt;
}
MyClass myClass = new MyClass();
myClass.Id = "1234567890";
myClass.Code = "dfgdrvyet";
myClass.ClientCreatedAt = new DateTimeOffset(new Date());
它被用作如下:
MobileServiceSyncTable<MyClass> myClassSyncTable = _client.getSyncTable(MyClass.class);
ListenableFuture<MyClass> responseFuture = myClassSyncTable.insert(myClass);
在插入時的ClientCreatedAt
設置爲null,當我調查的INSERT語句,它是不連載的庫中的GSON DATETIMEOFFSET,具體地,這條線:
JsonObject json = mClient.getGsonBuilder().create().toJsonTree(item).getAsJsonObject();
當我更換DateTimeOffset
與Date
,該值是串行化的PR operly。
所以,我的問題是:
- 並非意在Azure的移動應用程序,我使用的DateTimeOffset,如果是這樣,什麼是使用它的正確方法?
- 我可以強制Gson正確連載DateTimeOffset嗎?我看了Gson註釋,但沒有什麼可以幫到那裏。我不確定是否應該創建一個getter和setter用於序列化和反序列化。
這是關於DateTimeOffset Azure SDK類的嗎? – Adam
我的意思是在類中使用字符串,但在此格式類型中插入日期。像這樣的東西 '公共類MyClass {0}公共字符串ID; public String ClientCreatedAt; } MyClass inst = new MyClass(); inst.ClientCreatedAt = df.Format(c.getTime);' – Airat
我的問題是不同的,無論如何謝謝:) – Adam