📄 saveimagedb.cs
字号:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
/// <summary>
/// SaveImageDB 的摘要描述
/// </summary>
public class SaveImageDB
{
public SaveImageDB()
{
}
//存储照片到数据库,位移78个Bytes
public bool SaveImageOffset(byte[] ImagesBinary)
{
bool TranStatus = false;
//判断FileUpload是否有指定文件
if (ImagesBinary.Length > 0)
{
//取得连接字串,并建立连接
string connString = ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(connString);
conn.Open();
SqlTransaction tran = conn.BeginTransaction();
//配合原本Photo图片都有位移78个Bytes
byte[] Images = new byte[78 + ImagesBinary.Length];
//将FileUpload的二维数据复制到Images,并指定从78位置开始
ImagesBinary.CopyTo(Images, 78);
SqlCommand cmd = new SqlCommand("Update Employees set Photo=@paramPhoto where EmployeeID=14", conn);
cmd.Transaction = tran; //指定SqlCommand使用事务
try
{
cmd.Parameters.Add("@paramPhoto", SqlDbType.Image).Value = Images;
cmd.ExecuteNonQuery();
tran.Commit(); //确认事务
TranStatus = true;
}
catch
{
tran.Rollback(); //回复事务
TranStatus = false;
}
cmd.Dispose();
conn.Close();
conn.Dispose();
}
return TranStatus;
}
//存储照片到数据库,传入特定员工代号
public bool SaveImage(byte[] ImagesBinary,string txtEmployeeID)
{
bool TranStatus = false;
//判断FileUpload是否有指定文件
if (ImagesBinary.Length > 0)
{
//取得连接字串,并建立连接
string connString = ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(connString);
conn.Open();
SqlTransaction tran = conn.BeginTransaction();
//配合原本Photo图片都有位移78个Bytes
byte[] Images = new byte[78 + ImagesBinary.Length];
//将FileUpload的二维数据复制到Images,并指定从78位置开始
ImagesBinary.CopyTo(Images, 78);
SqlCommand cmd = new SqlCommand("Update Employees set Photo=@paramPhoto where EmployeeID=@paramEmployeeID", conn);
cmd.Parameters.Add("@paramEmployeeID",SqlDbType.Int,4).Value=Convert.ToInt32(txtEmployeeID);
cmd.Transaction = tran; //指定SqlCommand使用事务
try
{
cmd.Parameters.Add("@paramPhoto", SqlDbType.Image).Value = Images;
cmd.ExecuteNonQuery();
tran.Commit(); //确认事务
TranStatus = true;
}
catch
{
tran.Rollback(); //回复事务
TranStatus = false;
}
cmd.Dispose();
conn.Close();
conn.Dispose();
}
return TranStatus;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -