将 blob 提取到 linq 对象中
本文关键字:对象 linq blob 提取 | 更新日期: 2024-11-05 22:52:52
我通常使用 linq 语法从表中获取数据,但在这种情况下,在获取 blob 时,我遇到了 linq 无法处理大型 blob 的问题。
因此,我尝试使用以下方式获取 blob:
var li = new List<linq_table1>();
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
using (var command = conn.CreateCommand())
{
command.CommandText = "SELECT blob FROM table1";
var reader = command.ExecuteReader();
while (reader.Read())
{
var row = new linq_table1;
row.blob = reader[0] as System.Data.Linq.Binary;
}
}
conn.Close();
}
}
linq_table1 是 table1 的 dbml 表,其中仅包含一列类型为 varbinary(blob) 的列。 reader[0] as System.Data.Linq.Binary
但当表中的行包含 Blob 时返回 null。
这就是你要找的
(byte[])reader["blob"];
进一步阅读 这里