单个附件做出来了,请教一下多附件的做法。<body>
    <form id="form1" runat="server">
    <div id="div1" runat="server">
        <asp:FileUpload ID="FileUpload1" runat="server" Height="26px" />
        <asp:Button ID="Button1" runat="server" Text="上传" onclick="btnUpload_Click" 
            Height="28px" Width="62px" />
    </div>
    <div  id="div2" visible="false" runat="server">
        <asp:ImageButton ID="ImageButton1" runat="server" 
            ImageUrl="~/upload/Attachment.JPG" />
        <asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click"></asp:LinkButton>
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    </div>
    </form>
</body>
using System;
using System.Configuration;
using System.Collections;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.IO;public partial class _FileUpload : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        
    }    /// <summary>
    /// 附件上传模块
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnUpload_Click(object sender, EventArgs e)
    {
        Boolean fileOk = false;
        string filename = FileUpload1.FileName;
        string path = Server.MapPath("~/upload/");
        string path2 = path + filename;        //判断是否已经选取文件
        if (FileUpload1.HasFile)
        {
            //取得文件的扩展名,并转换成小写
            string fileExtension = System.IO.Path.GetExtension(filename).ToLower();
            //限定只能上传jpg和gif图片
            string[] allowExtension = { ".jpg", ".gif",".xls",".word",".ppt" };
            //对上传的文件的类型进行一个个匹对
            for (int i = 0; i < allowExtension.Length; i++)
            {
                if (fileExtension == allowExtension[i])
                {
                    fileOk = true;
                    break;
                }
            }
            //对上传文件的大小进行检测,限定文件最大不超过10M
            if (FileUpload1.PostedFile.ContentLength > 10240000)
            {
                fileOk = false;
            }
            //最后的结果
            if (fileOk)
            {
                try
                {
                    FileUpload1.PostedFile.SaveAs(path2);
                    Response.Write("<script>alert('上传成功')</script>");
                    div2.Visible = true;
                    LinkButton1.Text = filename;
                    int filesize = FileUpload1.PostedFile.ContentLength;
                    int kbfilesize = filesize / 1024;
                    Label1.Text = kbfilesize.ToString() + "KB";
                }
                catch
                {
                    Response.Write("<script>alert('上传失败')</script>");
                }
            }
            else
            {
                Response.Write("<script>alert('文件类型或者文件大小超出10M')</script>");
            }        }
    }    /// <summary>
    /// 附件下载模块
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void LinkButton1_Click(object sender, EventArgs e)
    {
        HttpResponse response = HttpContext.Current.Response;
        FileInfo fileInfo = new FileInfo(Server.MapPath("~/upload/") + LinkButton1.Text);//获取文件夹地址+文件夹名称
        response.Clear();
        response.ClearHeaders();
        response.Buffer = false;
        response.ContentType = "application/octet-stream";//定义文件类型为".*"(所有文件类型)
        response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(LinkButton1.Text, System.Text.Encoding.UTF8));
        response.AppendHeader("Content-Length", fileInfo.Length.ToString());
        response.WriteFile(fileInfo.FullName);//导出文件内容
        response.Flush();
        response.End();
    }
}