私はAndroid用のAzure Mobile Apps SDKを使用しています。次のようにそれが使用されているAndroidから.NET Web APIへのDateTimeOffsetの送信
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);
私はinsert文を調査したときに、ClientCreatedAt
は、nullに設定され、それが直列化されていないライブラリ内GsonですDATETIMEOFFSET、具体的には、この行は:私はDateTimeOffset
Date
と交換
JsonObject json = mClient.getGsonBuilder().create().toJsonTree(item).getAsJsonObject();
、値はシリアル化されたPRです動かす。
だから、私の質問は以下のとおりです。
- は私がのDateTimeOffsetを使用することがAzureのモバイルアプリに意図してそうならば、それを使用する正しい方法は何ですか?
- GsonにDateTimeOffsetを正しくシリアル化させることができますか?私はGson注釈を見ましたが、そこでは助けることはできません。私は、シリアライズとデシリアライズのためのゲッターとセッターを作成する必要があるかどうかはわかりません。
これは、DateTimeOffset Azure SDKクラスに関するものですか? – Adam
私はクラス内で文字列を使用しますが、この形式の日付で日付を挿入することを意味します。このようなもの 'public class MyClass { public String Id; public String ClientCreatedAt; } MyClass inst = new MyClass(); inst.ClientCreatedAt = df.Format(c.getTime); ' – Airat
私の質問は異なっています、とにかくありがとうございます:) – Adam