mongo客户

mongo客户端用于直接访问 App Service 的数据源,无需同步支持。

此 API 对应于 Atlas App Service“MongoDB API”。 有关方法和参数的详细说明,请参阅MongoDB API 参考文档

与 EJSON 之间的序列化是使用 KBSON 执行的, KBSON支持Kotlin 序列化框架,并处理与标记有Serializable的类之间的序列化。 可以通过自定义传递给各种 、 MongoDatabaseEJSONMongoCollection 工厂方法的 EJSON 序列化器来自定义序列化。

对象引用(链接)仅通过其主键进行序列化,因此要序列化 Realm 对象( RealmObject 、 EmbeddedRealmObject 和 AsymmetricRealmObject )发往和接收的 MongoDB API 请求和响应,序列化框架必须为这些对象配置特殊的序列化器。 这可以通过以下方式完成:

val user = app.currentUser
val client = user.mongoClient(
"serviceName",
EJson(
serializersModule = realmSerializerModule(
setOf(
MongoDBCollectionDataType1::class,
MongoDBCollectionDataType2::class
)
)
)

注意由于 MongoDB API 响应仅包含链接的主键信息,因此将响应序列化为 Realm 对象( RealmObject 、 EmbeddedRealmObject 和 AsymmetricRealmObject )将创建仅设置了主键属性的目标对象的实例。 Realm 对象的所有其他属性都将具有类定义中指定的默认值。

注意:EJSON 序列化器需要选择加入实验性“实验性” ExperimentalKBsonSerializerApi

属性

链接已复制到剪贴板

MongoClient正在连接的数据源的名称。

功能

链接已复制到剪贴板
@实验KBsonSerializerApi
内联 乐趣 <t : BaseRealmObject> MongoClient.集合(EJSON : EJSON ? = null): MongoCollection<t>

获取一个MongoCollection ,该集合公开从模式类型为T的远程对象集合中检索和更新数据的方法。

链接已复制到剪贴板
@实验KBsonSerializerApi
摘要 乐趣 database(databaseName : string , EJSON : EJSON ? = null): MongoDatabase

获取MongoDatabase对象以访问数据源远程集合中的数据。