我有一个Blazor WebAssembly ASP.NET Core hosted - PWA应用程序,想离线运行它。数据库目前是用SQLite和EF-Core构建的。是否可以添加离线功能?我读过关于IndexedDB的文章,但实际上不知道如何将其实现到项目中(客户端)。或者有没有任何NuGet包提供此支持?我想引入项目的功能是-跟踪本地更改,并在数据库再次联机时将其提取到数据库中。
Blazor WebAssembly ASP.NET Core hosted - PWA
IndexedDB
jgwigjjp1#
我已经创建了一个库,它为移动的客户端提供了双向脱机同步,这些客户端应该完成这项工作:https://github.com/stefffdev/NubeSync特别是当多个客户端确实更改了一个记录时,处理冲突解决可能会变得很棘手,因此您可以将其作为起点。我计划创建一个blazor wasm离线样本和博客关于它很快。
bvhaajcl2#
你可以试试这个包。这是一个Blazor库与IndexedDB DOM API一起工作https://github.com/amuste/DnetIndexedDb
nnsrf1az3#
检查This example, uses javascript to store locally in the browser
n8ghc7c14#
我正在使用事件源来解决这个问题。它可以很好地处理同步偶尔连接的客户端,如here所述。这意味着放弃实体框架,并可能重新构建整个持久性技术堆栈,所以它远非理想。但如果你计划构建一个大型复杂系统,这是一条可行之路。
4条答案
按热度按时间jgwigjjp1#
我已经创建了一个库,它为移动的客户端提供了双向脱机同步,这些客户端应该完成这项工作:https://github.com/stefffdev/NubeSync
特别是当多个客户端确实更改了一个记录时,处理冲突解决可能会变得很棘手,因此您可以将其作为起点。
我计划创建一个blazor wasm离线样本和博客关于它很快。
bvhaajcl2#
你可以试试这个包。这是一个Blazor库与IndexedDB DOM API一起工作
https://github.com/amuste/DnetIndexedDb
nnsrf1az3#
检查This example, uses javascript to store locally in the browser
n8ghc7c14#
我正在使用事件源来解决这个问题。它可以很好地处理同步偶尔连接的客户端,如here所述。这意味着放弃实体框架,并可能重新构建整个持久性技术堆栈,所以它远非理想。但如果你计划构建一个大型复杂系统,这是一条可行之路。