数据库存储图片路径-xml 数据存储到 数据库中
///
/// 添加图片到指定数据表
///
///
上传图像流
///
数据表名
///
图像字段名称
///
图片类型字段名称
///
图像大小字段名称
///
上传这张图片的SQL条件(IE:UserID=1)
public void AddPicture(System.Web.HttpPostedFile PostFile,字符串 TableName,字符串 PicField数据库存储图片路径,字符串 PicTypeFiled,字符串 PicSizeField,字符串 AddCondition)
{
如果(PostFile==null)
throw new myException("上传的文件流不能为空!");
//文件类型
字符串 FileType=PostFile。 内容类型;
//文件大小
Int32 FileLength=PostFile。 内容长度;
//图像文件暂存Byte数组
Byte[] FileByteArray = new Byte[FileLength];
//创建数据流对象
流 StreamObject = PostFile. 输入流;
//读取图像文件数据,FileByteArray为数据存储体,0为数据指针位置,FileLnegth为数据长度
流对象。 读取(文件字节数组数据库存储图片路径,0,文件长度);
System.Web.HttpContext.Current.Response.End();
//生成SQL语句
string strSQL="Update" + TableName + " set " + PicField + "=@Image,"+ PicTypeFiled + "=@ContentType," + PicSizeField + "=@ImageSize where 1=1 And " + AddCondition;
//判断是否是SQLServer数据库
如果(是 SQLDataBase)
{
//这里是SQLServer数据库的处理
SqlConnection ObjConn=new SqlConnection(Connectionstring);
ObjConn。 打开();
SqlCommand ObjComm = new SqlCommand(strSQL, ObjConn);
// 添加参数
ObjComm.Parameters.Add("@Image",System.Data.SqlDbType.Binary,FileLength).Value = FileByteArray;
ObjComm.Parameters.Add("@ContentType",SqlDbType.VarChar,20).Value = FileType;
ObjComm.Parameters.Add("@ImageSize", SqlDbType.Decimal,9).Value = FileLength;
对象通信。 执行非查询();
ObjConn。 关闭();
}
别的
{
//这里是其他数据的处理,比如Oracle
OleDbConnection ObjConn=new OleDbConnection(Connectionstring);
ObjConn。 打开();
OleDbCommand ObjComm = new OleDbCommand(strSQL, ObjConn);
ObjComm.Parameters.Add("@Image",System.Data.OleDb.OleDbType.Binary,FileLength).Value = FileByteArray;
ObjComm.Parameters.Add("@ContentType",System.Data.OleDb.OleDbType.VarChar,20).Value = FileType; //记录文件类型
ObjComm.Parameters.Add("@ImageSize",System.Data.OleDb.OleDbType.Numeric,9).Value = FileLength;
对象通信。 执行非查询();
ObjConn。 关闭();
}
}