【问题标题】:Android room rawquery issueAndroid 房间 rawquery 问题
【发布时间】:2020-12-02 20:17:20
【问题描述】:

我想实现 Android Room 持久化。 这是我的 DAO 接口。

@Dao
interface FoodDao {

    /**
     * Returns all data in table for Paging
     *
     * @param query a dynamic SQL query
     */
    @RawQuery
    fun getAll(query: SupportSQLiteQuery): DataSource.Factory<Int, Food>
}

由于某种原因,我有这个编译错误:

错误:可观察的查询返回类型(LiveData、Flowable、DataSource、DataSourceFactory 等)只能用于直接或间接(例如,通过@Relation)访问至少一个表的 SELECT 查询。对于@RawQuery,您应该通过observedEntities 字段指定要观察的表列表。 公共抽象 androidx.paging.DataSource.Factory getAll(@org.jetbrains.annotations.NotNull

【问题讨论】:

    标签: android kotlin android-room


    【解决方案1】:

    您必须指定观察到的实体:

    @RawQuery(observedEntities = [Food::class])

    查看更多:https://developer.android.com/reference/androidx/room/RawQuery#observedEntities()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-09
      • 2020-08-14
      • 2012-12-08
      • 1970-01-01
      • 1970-01-01
      • 2020-03-25
      相关资源
      最近更新 更多