我是Windows Azure移动服务的新手。我通过以下代码通过移动服务在一个表上运行一个简单查询:

mStudySpotTable = this.mClient.getTable(studyspot.class);
mStudySpotTable.where().field("ss_school_id").eq(1)
    .execute(new TableQueryCallback<studyspot>() {
          public void onCompleted(List<studyspot> result,
                                  int count,
                                  Exception exception,
                                  ServiceFilterResponse response) {

studyspot类是一个内部类,仅包含与列匹配的变量
在存储在云中的表中:
public class studyspot {
    int id;
    int ss_school_id;
    int ss_course_id;
    Date ss_startdatetime;
    Date ss_enddatetime;
    int ss_creator;
}

我遇到的问题是,当我尝试通过上面的查询运行应用程序时,收到了com.google.gson.JsonSyntaxException:java.text.ParseException“无法解析的日期:” 2013-11-03T20:00:00.000Z“

我怀疑问题与ss_startdatetime和ss_enddatetime的类型有关,它们是Java中的Date对象和sql表中的datetime。有人遇到这个问题吗?

最佳答案

客户端解析器来源建议应按预期解析数据:

https://github.com/WindowsAzure/azure-mobile-services/blob/master/sdk/android/src/sdk/src/com/microsoft/windowsazure/mobileservices/DateSerializer.java

也许检查您使用的Google GSON库版本,以确保它与Mobile Services SDK兼容。

10-08 17:05