【发布时间】:2017-08-03 22:01:48
【问题描述】:
我搜索了太久,但找不到任何答案。
我正在开发一个 UWP 应用程序,它将 BitmapImage 数据(转换为字节数组)存储到 SQLite3 数据库中的 blob 字段中。但是,一旦将数据保存在数据库中,我就找不到检索数据的方法。
我见过的所有解决方案都使用 Microsoft.Data.SQLite.SQLiteDataReader 中的 GetBytes 方法,但 Microsoft 的文档表明该方法“不受支持”。 https://docs.microsoft.com/en-us/dotnet/api/microsoft.data.sqlite.sqlitedatareader.getbytes?view=msdata-sqlite-1.1.0
谁能展示一些示例代码如何从 SQLite 3 数据库中检索 blob 并将其转换为 BitmapImage 以进行显示?
提前感谢您的帮助。
【问题讨论】:
-
谢谢,但它似乎没有显示任何关于如何从数据库中读回字节数组的信息。
-
This says 使用
reader.GetFieldValue<byte[]>() -
@ArthusLeSavage 实体框架是一种用于处理转换为数据库中表的对象的工具。创建一个具有字节数组的类,并创建一个具有正确数据类型的表,当您运行查询时,您会得到一个字节数组。
-
如果您使用
byte[]来存储字节,那么您不需要使用“GetBytes”。例如-这是您的模型:public byte[] ImageAsBytes {get; set;}然后您可以像var bytes = db.TableName.ImageAsBytes.FirstOrDefault( r => r.primaryKey == value );一样简单地访问它