返回首页
当前位置: 主页 > 网络编程 > .Net实例教程 >

实现将文件作为二进制数据保存入数据库程序代码

时间:2011-05-24 14:05来源:知行网www.zhixing123.cn 编辑:麦田守望者

HttpPostedFile file = fuFile.PostedFile;
if(file.ContentLength <= 0)
{
lbMessage.Text = "上载的文件的内容为空,不能上载";
return;
}
///获取文件的名称和扩展名
string vfilename = System.IO.Path.GetFileName(file.FileName);
///定义保存文件的二进制数据
byte[] data = new byte[file.ContentLength];
///读取文件的二进制数据
file.InputStream.Read(data,0,file.ContentLength);
///获取配置文件Web.config中的连接字符串
string conString = ConfigurationManager.ConnectionStrings["WEB2ASPNET2DBConnectionString"].ConnectionString;
///创建连接SQL Server数据库的SqlConnection对象
SqlConnection myCon = new SqlConnection(conString);
string cmdText = "INSERT INTO [Files] ([Name],[Type],[Data])VALUES('"
+ vfilename + "','"
+ file.ContentType + "',@Data)";
SqlCommand myCmd = new SqlCommand(cmdText,myCon);

///添加SQL语句的参数
SqlParameter pData = new SqlParameter();
pData.ParameterName = "@Data";
pData.Value = data;
pData.Direction = System.Data.ParameterDirection.Input;
myCmd.Parameters.Add(pData);
try
{
myCon.Open(); ///打开连接
myCmd.ExecuteNonQuery();///将数据库保存到数据库
lbMessage.Text = "上载文件:“" + vfilename + "” 成功。";
}
catch(SqlException sqlex)
{ ///如果连接失败,则显示错误信息
lbMessage.Text = sqlex.Message;
}
finally
{ ///关闭已经打开的连接
if(myCon != null)
{
myCon.Close();
}
}

------分隔线----------------------------
标签(Tag):C# C#实例教程 c#基础教程 C#源代码
------分隔线----------------------------
推荐内容
猜你感兴趣