小编Abd*_*mad的帖子

DaoException:实体与DAO上下文分离

我有两个实体,UserStore.User有很多Stores(1:M)关系.我已经通过以下代码将一些商店列表插入到商店表中.

public void saveStoresToDatabase(Context context, ArrayList<Store> storeList) {

    DevOpenHelper helper = new DaoMaster.DevOpenHelper(context, "notes-db", null);
    SQLiteDatabase db = helper.getWritableDatabase();
    DaoMaster daoMaster = new DaoMaster(db);

    DaoSession daoSession = daoMaster.newSession();
    StoreDao storeDao = daoSession.getStoreDao();

    ArrayList <Store> list = SharedData.getInstance().getUser().getStoreList();

    for(int i = 0; i < storeList.size(); i++) {
        storeList.get(i).setUserIdForStore(SharedData.getInstance().getUser().getId());
    }
    storeDao.insertOrReplaceInTx(storeList);
    list.addAll(storeList);
    user.resetStoreList();

}
Run Code Online (Sandbox Code Playgroud)

每当我尝试通话时,我都会得到"实体与DAO上下文分离"异常 user.getStoreList().发生异常,在下面的代码狙击为daoSessionnull.

public ArrayList<Store> getDMStoreListFromDatabase(Context context) {
    return SharedData.getInstance().getUser().getStoreList();
}
Run Code Online (Sandbox Code Playgroud)

SharedData我的单身人员在哪里,有一个用户对象:

private SharedData() { …
Run Code Online (Sandbox Code Playgroud)

greendao

6
推荐指数
1
解决办法
6465
查看次数

标签 统计

greendao ×1