我想添加多个附件上传,将他们存放在一个文件夹里,同时获得每个上传文件的文件名,并将他们存入到数据库中,在另一个页面里,可以根据数据库中的文件名,建立链接,对每个附件进行下载??
  该如何做??

解决方案 »

  1.   

    涉及的内容比较多,不好回答。
    找一本ASP.NET这方面的书看一看吧。都会有介绍的。
      

  2.   

    那应该是一个文件使用一个<input>?还是把要上传的文件添加到一起在上传?如果一起该如何获得每个文件的名称放入到数据库中?
      

  3.   

    文件下载
    string filePath = System.Web.HttpContext.Current.Server.MapPath("fileName.xls");
    System.IO.FileInfo file = new System.IO.FileInfo(filePath);
    Response.Clear();
    Response.AddHeader("Content-Disposition", "attachment;   filename=" + HttpUtility.UrlEncode(outputFile+".xls"));
    Response.AddHeader("Content-Length", file.Length.ToString());
    Response.ContentType = "application/octet-stream";
    Response.WriteFile(file.FullName);
    Response.Flush();
    Response.Clear();
    Response.End();
      

  4.   

    上传
    FileUpload1.PostedFile.SaveAs(savePath);
    下载
     Response.TransmitFile(filepath);
    Response.End();
      

  5.   

    楼主说的问题应该是比较简单的问题!楼主是存储到文件夹里的,不是把文件存储到大对象类型中。
    文件上传:
    目的:服务器的硬盘上,随机建立文件夹或指定,将文件存在指定目录,同时将文件存储路径、文件名及扩展名等信息存储到数据库中。
    源文件:html fileInput控件,雷同邮箱附件效果,客户端硬盘。文件下载:
    数据源:根据变量读取数据库,得到对应文件的服务器存储路径、文件名等信息,文件下载(就是个链结即可)。
    目的:存储到本地。
      

  6.   


    如何获得每个文件的名字?在前台html中每增加 HtmlInputFile 控件就做个计数(可以通过HtmlInputHidden控件传参),然后到后台循环解析对应的HtmlInputFile 控件内容(HtmlInputFile 的id具有规律性为宜)。
      

  7.   

    fileupload你在MSDN看下用法用用就会了.
      

  8.   


            static public ArrayList hif = new ArrayList();  public void localUpLoad()
            {
                         
                //上传文件
                //string m_path = System.Configuration.ConfigurationSettings.AppSettings["UploadFilePath"];   //绝对路径
                string TeachRS = System.Configuration.ConfigurationSettings.AppSettings["TeachRS"];//获得教育资源的目录
                //StaticBuilder.DirectoryPath(m_path + TeachRS);//创建文件目录            //创建文件目录
                if (TeachRS != null && TeachRS != string.Empty)//modify by pan 2008-06-26
                {
                    ftpHelper.MakeDirectory(TeachRS);
                    ftpHelper.DirectoryPath +=  TeachRS;
                }            if (this.InputFile.HasFile)
                {
                    hif.Add(this.InputFile);
                }            if (this.InputFile1.HasFile)
                {
                    hif.Add(this.InputFile1);
                }
                if (this.InputFile2.HasFile)
                {
                    hif.Add(this.InputFile2);            }
                if (this.InputFile3.HasFile)
                {
                    hif.Add(this.InputFile3);
                }
                if (this.InputFile4.HasFile)
                {
                    hif.Add(this.InputFile4);
                }
                if (hif.Count == 0)
                {
                    this.ShowMessage("系统提示", "请选择要上传的资源");
                    return;
                }
                foreach (FileUpload HIF in hif)
                {                string DataString = DateTime.Now.ToString("yyyyMMddHHmmss");
                  //  string path = m_path + TeachRS + "\\" + DataString + HIF.FileName;
                   // HIF.MoveTo(path, Brettle.Web.NeatUpload.MoveToOptions.Overwrite);
                   // HIF.SaveAs(path);
                    
                    RmsTeachResource rtr = new RmsTeachResource();
                    rtr.FtpId = ftpinfo.Id;//资源的FTP地址 modify by pan 2008-06-26
                    rtr.Auditstate = (int)EnumAuditstate.Wait;//资源审核状态
                    rtr.Restatus = (int)EnumRestatus.Init;//上传状态为初始化
                    /////////////////////////MIAO 作者根据登陆用户得到  上传路径没有添加
                    rtr.Author = register.LoginName;
                    rtr.Title = this.txtTitle.Text;
                    rtr.Id = Guid.NewGuid();
                    rtr.Des = this.txtContent.Text;
                    ////////////////////////MIAO 上传用户的ID
                    // rs.UpdatePerson = new RmsRegister();
                    // rs.UpdatePerson.Id = register.Id;
                    rtr.UpdatePerson = register.Id;
                    int FileSize = (int)HIF.PostedFile.ContentLength / 1024;
                    rtr.FileSize = FileSize == 0 ? 1 : FileSize;
                    rtr.Viewstate = 0;
    ........................................               ftpHelper.UploadFile(HIF.PostedFile, DataString + HIF.FileName);//modify by pan 2008-06-26
                    rtrb.Save<RmsTeachResource>(rtr);
                               }
                this.ShowMessage("系统提示", "资源上传成功!");
                hif.Clear();
                this.RequiredFieldValidator2.Visible = false;        }