【发布时间】:2020-07-29 16:50:29
【问题描述】:
我正在使用SettingsPlugin 将值保存到本地数据库。使用这个插件,我保存了一个 EpubBook 数据,如下所示:
CrossSettings.Current.AddOrUpdateValue("epub", epubBook.ToString());
检索到如下值:
string epubString = CrossSettings.Current.GetValueOrDefault("epub", string.Empty);
if (!string.IsNullOrWhiteSpace(epubString))
{
//Need to convert string epub data to EpubBook data
}
我需要将字符串 epub 数据转换为 EpubBook 吗?这可能吗?这是为了缓存 EpubBook 数据。
我使用Application.Current.Properties 完成了相同的操作,并且在那里保存和检索工作正常。请看以下代码:
//Saving value
Application.Current.Properties["epub"] = epubBook;
//Retriving value
EpubBook epubBook = (EpubBook)Application.Current.Properties["epub"];
但Application.Current.Properties 值会在关闭应用程序后自动清除。这就是我开始研究SettingsPlugin 的原因。那么有什么方法可以使用SettingsPlugin 保存和检索 EpubBook 吗?如果没有建议缓存 EpubBook 数据的方法?
【问题讨论】:
-
为什么?为什么不直接将其写入文件系统?一个 epub 可以很容易地从数百 KB 到数百 MB。为什么要尝试使用设置来保存它们?
-
@Jason 目前我的 epub 是一个 URL,我总是从 URL 解析 epub 章节。首先,将 URL 转换为流,然后转换为 epubbook。这种方法太慢了,请提出解决方案?
-
这仍然无法解释您为什么不直接将数据写入文件系统
标签: xamarin.forms epub