我有一个我无法控制的数据库架构(它是从桌面应用程序导出的一个 sqlite3 文件,我需要与之交互操作),其中包含某些列的 UUID。我sqlite-net-pcl在 Xamarin.Forms 应用程序中使用,我无法弄清楚如何成功读取这些列。这是我尝试过的:
- 使用 sqlite3 命令行,我已经确认架构具有
uuid相关列的类型,并且使用select count(distinct uuidcolumn) from mytable;我已经确认每一行都有值。(该列可以为空,这与下面的代码片段相关,但实际上所有行都具有非空值) - 我有这个模型对象:
namespace brahms.Model
{
[Table("mytable")]
public class MyTable
{
[Column("uuidcolumn")]
public Guid UUIDColumn { get; }
[PrimaryKey, AutoIncrement, NotNull]
[Column("recordid")]
public int RecordID { get; set; }
}
}
database.Query<MyTable>()如果我使用查询获取对象,UUIDColumn则始终等于Guid.Empty.- 我尝试将类定义中的类型切换为
Byte[]; 它总是null。 - 我尝试将类定义中的类型切换为
string; 它总是null。 - 同样适用于
UInt16[]类型(GUID 可能存储为 16 位字的 blob,所以我也尝试了该类型)
如何使用 读取uuid-typed 列中的值sqlite-net-pcl?