我正在尝试在sqlite表中存储图片。我正在使用mvvmcross vnext及其插件sqlite。
我有这个类Image数据库中的表“Image”:
public class Image : Model
{
[IsNullable(false)]
public int ImageID { get; set; }
[IsNullable(false), MaxLength(100)]
public string UrlImage { get; set; }
[IsNullable(false), MaxLength(100)]
public string Name { get; set; }
}
我需要为图片数据添加一个属性。
我是以byte [ ]
格式存储图片吗? (我听说过“BLOB
”)
使用ORM可以做到这一点吗?或者我需要直接使用sql查询吗?
感谢您的帮助
答案 0 :(得分:3)
您可以将文件(包括图像)存储在byte [max]列中。读取映像文件的字节并将其写入数据库中的该列。
答案 1 :(得分:2)
对于SQLite-net,这个测试类提供了一些读取写字节数组的好例子 - https://github.com/praeclarum/sqlite-net/blob/master/tests/ByteArrayTest.cs
它使用如下数据类:
public class ByteArrayClass
{
[PrimaryKey, AutoIncrement]
public int ID { get; set; }
public byte[] bytes { get; set; }
}