读取sql库里image类型的数据。在一类里读取image类型数据,字段g-pic是image类型的
g_pic= (byte[])sqlDataReader["g_pic"];
private byte[] m_g_pic;
public byte[] g_pic
{
get
{
return m_g_pic;
} set
{
m_g_pic = value;
}
}
错误提示说:类型转换错误 ,应该怎么转换,
g_pic= (byte[])sqlDataReader["g_pic"];
private byte[] m_g_pic;
public byte[] g_pic
{
get
{
return m_g_pic;
} set
{
m_g_pic = value;
}
}
错误提示说:类型转换错误 ,应该怎么转换,
解决方案 »
- ASP.NET MVC3 EFCodeFirst部署后,由于系统升级要更改数据库怎么办
- 网页兼容性怎么测试
- 为什么这里需要两个命名空间
- 做更新是,每个文本都显示System.Data.SqlClient.SqlDataReader,为什么啊
- 关于实现动态菜单的一个问题
- 把datalist内容导出到excel
- 关于ASPX.net 代码绑定域名的问题 RMB有偿回报!
- 想在一个网站上加一个搜索功能(利用百度)!怎么才能让结果我的网站内显示呀?
- 如何在现有asp.net网站中加入ajax
- 如何把参数传到框架页中的子页(aspx页)?
- 为什么我按saucer(思归/MVP 提供的地址的方法 做的上传程序 产生的图片,查看的时候显示是*呢,我是一点都没变
- 学习垃圾回收器的用途
--------------------------------
public bool View(int Gid)
{
SqlDataReader sqlDataReader = null;
bool flag1 = false;
string strconn=ConfigurationSettings.AppSettings["DSN"];
string strSql = "SELECT * FROM gc WHERE id=@Gid";
SqlParameter sqlParameter = new SqlParameter("@Gid",Gid);
sqlParameter.Direction = ParameterDirection.Input;
sqlParameter.DbType = DbType.String;
try
{
sqlDataReader = SqlHelper.ExecuteReader(strconn,CommandType.Text,strSql,new SqlParameter[]{sqlParameter});
if (sqlDataReader.Read())
{
flag1 = true;
Gid=Gid;
g_ename = sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_ename"));
g_cname= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_cname"));
g_addree= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_addree"));
g_tel= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_tel"));
g_engry= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_engry"));
g_mcp= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_mcp"));
g_oldname= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_oldname"));
g_man= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_man"));
g_intro= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_intro"));
g_pic= (byte[])sqlDataReader["g_pic"];
g_picSize = Convert.ToInt32(sqlDataReader.GetOrdinal("picSize"));
g_picType= sqlDataReader.GetString(sqlDataReader.GetOrdinal("g_picType"));
}
sqlDataReader.Close();
return flag1;
}
catch (SqlException e)
{
throw e;
}
}
#endregion
MyData = (byte[])myRow["imgField"];
唯一不同的是他指定了byte[] MyData= new byte[0];
我以前没把读图片放到类库里的时候是直接读取
Response.Clear();
Response.ContentType=dr["ImageType"].ToString();
Response.BinaryWrite((byte[])dr["ImageData"]);
可放到类库里了,设置读取器就不对了 难道需要设置byte[]的大小?