我正在尝试使用 Azure 移动服务来保存我的 Android 应用程序中的数据。我现在遇到的问题是我有一个数据传输对象,其中有几个字段对应于 Azure 数据库表中的列。而且我有一个字段,我不想保留。我正在尝试使用@Expose 注释,但它似乎不起作用,我从 Azure 收到一个异常,说 SubCategories 的数据类型无效。什么是我做错了吗?
package com.mycorp.myapp.model;
import java.util.*;
import com.google.gson.annotations.*;
public class Category {
public Category(){
SubCategories = new ArrayList<Category>();
}
public int Id;
public String Name;
public int ParentId;
@Expose(serialize = false, deserialize = false)
List<Category> SubCategories;
}
下面的代码返回一个 MobileServiceException ({"code":400,"error":"Error: The value of property 'SubCategories' is of type 'object' which is not a supported type."})
Category category = new Category();
category.Name = "new";
category.ParentId = 1;
mClient.getTable(Category.class).insert(category, new TableOperationCallback<Category>() {
@Override
public void onCompleted(Category entity, Exception exception, ServiceFilterResponse response) {
if(exception!=null)
{
Log.e("Service error", exception.getMessage());
}
}
});