假设我有一个带有嵌入式对象的实体:
public class Coordinates {
double latitude;
double longitude;
}
@Entity
public class Address {
String street;
@Embedded
Coordinates coordinates;
}
使用longitude
和latitude
作为参数来定义查询,如下所示:
@Query("SELECT * FROM Address WHERE longitude = :longitude AND latitude = :latitude")
public LiveData<List<String>> getStreet(double longitude, double latitude);
有效。
但是有一种方法可以使用Coordinates
(相对于longitude
和latitude
)作为查询参数?试过这个:
@Query("SELECT * FROM Address WHERE longitude = :c.longitude AND latitude = :c.latitude")
public String whatStreetAt(Coordinates c);
,但是不起作用(在Android Studio中出现错误)。有想法吗?