android - 在 dao room 数据库中创建一个带有 body 的自定义函数
问题描述
我想用这样的自定义函数创建一个 DAO 对象
@Dao
interface DataAccessObjDao{
@Insert
fun insert(someEntity: SomeEntity)
@Ignore
fun sampleFun(){
insert(SumEntity())
}
}
但编译器抱怨样本乐趣
类“DataAccessObjDao_Impl”必须声明为抽象或在“DataAccessObjDao”中实现抽象方法“sampleFun()”
解决方案
@Ignore
用于属性或实体,不能用于方法。
你可以通过扩展你的界面来做到这一点:
fun DataAccessObjDao.sampleFun(){
// irrelevant code
}
或通过添加@Transaction
@Transaction
fun sampleFun(){
firstDelete()
thenInsert()
}
推荐阅读
- r - Tibble 无法获取异常检测的日期(可重现的示例)
- php - 生成 2.500k 页 PDF
- php - Laravel 模型按关系计数
- java - 无法从 Android 应用程序的方法或其他活动中获取数据
- go - 如何解决期望库中的“不支持”错误
- android - 恢复与蓝牙 LE 服务器的连接(BluetoothGatt.connect() 似乎不起作用)
- android - 后台 Android 上的 Firebase 侦听器
- node.js - 如何将 NodeJS REST API 部署到 AZURE 云
- r - 如何导入 JSON 并将其转换为适当的数据框
- python - 切片多个范围