访问 Akavache 创建的缓存

问题描述

我正在 Xamarin 表单上构建我的第一个应用程序,并且刚刚实现了一个 API,用于在 Azure 存储上添加删除、更新和查询表。我的下一步是通过 Akavache 将云数据存储在缓存中,以便应用程序的启动更顺畅一些。我已经实现了一个 IoC 模块,可以像这样注入和更新缓存数据:

Bind<Akavache.IBlobcache>().ToConstant(Akavache.Blobcache.LocalMachine);"

然后在我的视图模型中我添加属性

readonly IBlobcache _cache;

在视图模型中加载构造函数时,属性被设置。接下来调用 load 方法获取云数据并显示缓存的数据,如下所示:

_cache.GetAndFetchLatest("entries",() => _tripLogService.GetEntriesAsync())
                  .Subscribe(entries => LogEntries = new ObservableCollection<TripLogEntry>(entries));

数据的加载时间没有改变,当我在手机处于飞行模式时运行应用程序时,应用程序挂起并最终崩溃。看起来好像正在缓存数据。手机设置中的应用信息显示,每次启动程序时,缓存大小都会逐渐增加

我尝试了几种不同的 Akavache nuget 并在 App.cs 中添加了 Blobcache.ShutDown().Wait() 但没有成功。

任何帮助将不胜感激。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)