ASP.NET附件上传和下载

本文介绍了在ASP.NET中使用DevExpress控件实现附件上传和下载的两种思路。附件可以是多种类型,如doc、sql、jpg等。上传时,可以将文件内容转化为二进制流存入数据库或直接保存在服务器。下载方面,支持单个文件下载,也能打包多个文件为压缩包进行下载。文章还提供了相关参考链接和资源。

【背景和需求要求】

  1. ASP.NET+DevExpress第三方控件实现Web Form应用(在线公证服务)
  2. 附件有多种类型,doc/sql/jpg/png/….,目前没有限制附件类型,不过真实情况下应该会限制,这种限制既可以在附件上传控件的属性上做限制,也可以在代码中用正则表达式做限制,当然这种限制是由管理员提出的。
  3. 不同的公证可能需要上传不同的附件,因此前台需要动态生成n个附件上传的控件(FileUpload或者其他),点击上传后,附件上传到数据库中或者服务器上
  4. 附件的下载支持单文件下载,也支持多文件打包压缩后下载。下载到客户端机器上

【附件上传】
1. 思路一
文件上传,将文件内容转换为二进制流(byte[]字符串),然后将二进制流写入到Insert方法中
将文件转换为字节数组,并作为一个字段保存到数据库中,在Oracle数据库中相应字段为BLOB(二进制的大数据对象),在MS SQLServer中是image类型。
实现步骤:
① 

--1.建表
CREATE TABLE TA_附件(
   附件编号 VARCHAR2(5) CONSTRAINTS PK_附件_编号 PRIMARY KEY,
   附件名称 VARCHAR2(100) NOT NULL,
   附件内容 BLOB NOT NULL,
   附件类型 VARCHAR2(20),
   附件大小 INTEGER,
   附件上传时间 DATE,
   是否上传成功 VARCHAR2(2) DEFAULT '0'
);

-- Add comments to the columns 
comment on column TA_附件.附件类型
  is 'jpg|gif|doc|*';
comment on column TA_附件.是否上传成功
  is '0-上传失败,1-上传成功,默认失败';

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值