STSdb:存储自定义字段类型
本文关键字:字段 类型 自定义 存储 STSdb | 更新日期: 2023-09-27 17:56:45
Background
我正在尝试使用 STSdb 来存储自定义类型,例如 TimeSpan
.但是,一旦我初始化XTable
,应用程序就会崩溃,因为Appointment
具有不受支持的TimeSpan
对象。
法典
using (IStorageEngine engine = STSdb.FromFile("db.stsdb4"))
{
// This statement immediately crashes the app.
var table = engine.OpenXTable<string, Appointment>("Appointment");
}
class Appointment
{
...
public TimeSpan Reminder { get; set; }
...
}
问题
如何让 STSdb 识别TimeSpan
对象(或其他自定义类型)?查看自定义比较器和持久逻辑文档,自定义记录持久逻辑是在engine.OpenXTable
语句之后添加的...
是的,我知道我应该将 STSdb 作为标签,而不是标题的一部分,但我没有 SO 所需的 1500 次代表来创建新标签——显然以前没有其他人使用过 STSdb 标签。
在STSdb官方网站上有一个开发人员指南文档,详细描述了STSdb的关键方面。您可以在此处找到 STSdb 4.0.4 开发人员指南:STSdb 文档。您正在寻找的主题在第 32 页 - "自定义 XTable 逻辑"中进行了描述。
STSdb 现在支持 TimeSpan 作为 2014 年 6 月 25 日发布的版本 4.0.4 的基元类型。您可以在此处找到发行说明:STSdb 4.0.4 发行说明。