//从form 中获取fileData
HttpFileCollection files = Request.Files;
byte[] fileData = new byte[files[0].ContentLength];
files[0].InputStream.Read(fileData, 0, fileData.Length);
void FileStateHandle(string connstr, OptType opt, string fileName,byte[] fileData, string state, string message)
{
SqlConnection sqlconn;
string commandText = null;
SqlCommand cmd = new SqlCommand();
message = message.Replace("'", "''");
fileName = fileName.Replace("'", "''");
sqlconn = new SqlConnection(connstr);
switch(opt){
case OptType.Insert:
commandText = "insert into dbo.SalesTraceUploadedFiles(FileName,FileData,State,Message,Date) select "
+ "'" + fileName + "'"
+ ", @fileData"
+ ",'" + state
+ "','" + message
+ "',getdate()";
cmd.CommandText = commandText;
//此处是重点哦 将filedata 赋值进去
SqlParameter prmFileData = new SqlParameter("@fileData", SqlDbType.VarBinary);
prmFileData.Value = fileData;
prmFileData.Size = fileData.Length;
cmd.Parameters.Add(prmFileData);
break;
case OptType.Update:
commandText = "update SalesTraceUploadedFiles set Message = '"+message+"' ,State = '" + state
+ "' where FileName = '" + fileName + "'";
cmd.CommandText = commandText;
break;
}
try
{
cmd.Connection = sqlconn;
sqlconn.Open();
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
finally{
sqlconn.Close();
cmd.Dispose();
}
}