【问题标题】:Does realm database support blazor web assembly?领域数据库是否支持 Blazor Web 程序集?
【发布时间】:2021-02-26 10:21:02
【问题描述】:

我有一个雄心勃勃的目标,即构建一个跨平台应用程序,该应用程序将尽可能多地共享可在桌面、移动设备和网络浏览器上运行的代码。该应用程序将使用 realm database 和 mongoDB atlas 进行云同步。

所有这些不错的离线优先自动同步功能都适用于桌面设备和移动设备。我想知道是否可以将其用于 blazor Web 程序集?

假设这是不可能的,我可以使用什么替代品作为数据库?我可以做些什么来在 blazor 上实现与 mongoDB 领域云数据库的实时同步作为后备?

【问题讨论】:

  • 它们支持 Angular 等,因此应该可以使用包装器。但谷歌显示没有匹配,你可能必须自己开始一个。

标签: c# realm blazor blazor-webassembly mongodb-realm


【解决方案1】:

目前,Realm Database 和 Realm Sync 都不能在浏览器中运行。该团队计划将 Wasm 作为潜在目标进行探索,但目前还没有明确的时间表。

就解决方法而言,您可以使用GraphQLWeb SDK,这两者都公开了一个API,以通过HTTP API 查询MongoDB。 Web SDK 相对于 GraphQL 的一个优势是它支持观察集合的变化,而 GraphQL 仅支持查询和突变。使用这两种解决方案,您都需要设计自己的缓存/存储层。

【讨论】:

  • Nikola 非常感谢您的回答,一切都说得通。 Web SDK 是基于 javascript/typescript 的。是否有另一个可供 .NET 使用并且能够执行 CRUD 并监视更改的 SDK?或者我必须在 blazor 中创建一个桥来访问 js sdks?
  • 不幸的是,我认为目前还没有,所以桥接 JS SDK 似乎是您最好的选择。
  • 知道了。这可能是另一回事,我遇到了这个页面。似乎有 C# SDK 来监视集合更改,不确定它是否打算在 .net 工作的每个地方使用或对目标平台有限制docs.mongodb.com/manual/changeStreams
  • 这些文档适用于 C# 驱动程序 - 这与 Realm SDK 不同。从技术上讲,您可以使用 C# 驱动程序,不幸的是,MongoDB 领域中仅公开了有线协议功能的子集:docs.mongodb.com/realm/mongodb/connect-over-the-wire-protocol,并且更改流不在该列表中。因此,虽然我没有亲自测试过它,但我认为它不适用于您的用例。
  • 讲道理尼古拉!再次感谢您的澄清。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-30
  • 1970-01-01
  • 1970-01-01
  • 2011-03-11
  • 2021-05-31
相关资源
最近更新 更多