0

我正在尝试将图片存储在 sqlite 表中。我正在使用 mvvmcross vnext 及其插件 sqlite。

我在数据库中的表“图像”中有这个类图像:

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 查询吗?

谢谢你的帮助

4

2 回答 2

3

您可以将文件(包括图像)存储在 byte[max] 列中。读取图像文件的字节并将它们写入数据库中的该列。

于 2013-04-23T07:49:24.910 回答
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; }
}
于 2013-04-23T08:19:13.953 回答