我问一下啊.怎么把文件上传到数据库的binary这个类型里啊..还有下载又怎么下载啊..

另类唐伯虎 2004-12-06 10:12:00
在线等待啊..50分啊....
各位,高手,快啊..
...全文
155 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wwh207 2004-12-07
  • 打赏
  • 举报
回复
楼上的兄弟都说的差不多了,我补充一下,你要上传到数据库中,为了读出方便,你最好要同时保存几个属性,1.ContentType,2.ContentLength,3.ContentTitle.这些在读出数据是一般都要用到的。
Miracle 2004-12-07
  • 打赏
  • 举报
回复
没错,还有原是文件名(好像是废话,几乎没人不存这个)
Miracle 2004-12-06
  • 打赏
  • 举报
回复
文件是以流的形式上传的,保存到数据库时应当将流的内容写入Byte[](字节数组),然后将这个字节数组作为参数传递给对应的存储过程参数(类型可以是varbinary)保存就可以了。

下载的时候,只要按照相反的动作,先作为Byte[]从字段中读出,然后将这个字节数组写入HttpResponse content stream就行了,注意需要指定Content-Type,比如Application/octet-stream
zhy0101 2004-12-06
  • 打赏
  • 举报
回复
fs = new FileStream(FileName,FileMode.OpenOrCreate);
BinaryReader r = new BinaryReader(fs);
r.BaseStream.Seek(0,SeekOrigin.Begin);
byte[] buffer = r.ReadBytes(size);
SqlConnection conn = new SqlConnection(connstring);
string sql = "insert into table1(binary) values(@binary)";
SqlCommand command = new SqlCommand(sql);
command.Connection = conn;
SqlParameter param = new SqlParameter("@binary",SqlParameter.DbType.Binary);
param.value = buffer;
conn.Open();
command.ExecuteNonqurey();
conn.Close();

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧