public byte[] DownloadFile(int id)
{
byte[] buffer = null; MySqlConnection sqlConn = GetConn();
MySqlCommand cmd = new MySqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select id,content from t_subject where id = @id";
cmd.Parameters.Add("@id", MySql.Data.MySqlClient.MySqlDbType.Int32);
cmd.Parameters[0].Value = id;
cmd.Connection = sqlConn;
sqlConn.Open();
System.Data.Common.DbDataReader reader = cmd.ExecuteReader(); if (reader.HasRows)
{
reader.Read(); -------------------------------------------------此句报错
long len = reader.GetBytes(1, 0, null, 0, 0);
buffer = new byte[len];
len = reader.GetBytes(1, 0, buffer, 0, (int)len);
} sqlConn.Close();
return buffer; }上面那句reader.Read()时,如果BLOB大一点的话,断言失败的错误,(但如果BLOB比较小,大概几M的样子,就不会出现这个错误)错误栈顶在
at MySqlPacket.ReadInteger(Int32 numbytes)但我点忽略,程序能正常运行并正确下载文件,如何消除这个异常?或者自动忽略掉这个异常.或者说.谁能提供个好点的方法解决WEBSERVICE下载问题.万分感谢
这个和你数据库有什么关系吗?