将 blob 提取到 linq 对象中
Fetch blob into a linq object
我通常使用 linq 语法从 table 中获取数据,但在这种情况下,当获取 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 table,它只包含一个类型为 varbinary(blob) 的列。 reader[0] as System.Data.Linq.Binary
虽然 returns 当 table 中的行包含 blob 时为 null。
这就是您要找的东西
(byte[])reader["blob"];
进一步阅读here
我通常使用 linq 语法从 table 中获取数据,但在这种情况下,当获取 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 table,它只包含一个类型为 varbinary(blob) 的列。 reader[0] as System.Data.Linq.Binary
虽然 returns 当 table 中的行包含 blob 时为 null。
这就是您要找的东西
(byte[])reader["blob"];
进一步阅读here