using System.IO;
using System.Data.SqlClient;

protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.TextBox TextBox1;
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.HtmlControls.HtmlInputFile File1;
protected Int32 FileLength = 0;// Put user code to initialize the page here
String str = "data source = DFMC-KN1BUG7RK1;initial catalog=master;user id=sa;password=371039; "+
"persist security info=TRUE; packet size = 4096;connect Timeout = 180; "+
"Pooling=true;Min Pool Size = 10;Max Pool Size=50";


HttpPostedFile UpFile =File1.PostedFile;
FileLength = UpFile.ContentLength;
try
{
   if(FileLength == 0)
  {
   TextBox1.Text = "请选择你要上传的文件!";
  }
  else
  {
Byte[] FileByteArray = new Byte[FileLength];
Stream StreamObject = UpFile.InputStream;
StreamObject.Read(FileByteArray,0,FileLength);
SqlConnection Con = new SqlConnection(str);
string SqlCmd = "INSERT INTO ImageStore "+
"(ImageData, ImageContentType, ImageDescription, ImageSize) "+
"VALUES (@Image, @ContentType, @ImageDescription, @ImageSize)";
SqlCommand CmdObj = new SqlCommand(SqlCmd,Con);
CmdObj.Parameters.Add("@Image",SqlDbType.Binary,FileLength).Value = FileByteArray;
CmdObj.Parameters.Add("@ContentType",SqlDbType.VarChar,50).Value = UpFile.ContentType;
CmdObj.Parameters.Add("@ImageDescription",SqlDbType.VarChar,200).Value = TextBox1.Text;
CmdObj.Parameters.Add("@ImageSize",SqlDbType.BigInt,8).Value =UpFile.ContentLength;
Con.Open();
CmdObj.ExecuteNonQuery();
Con.Close();
Label1.Text = "ok!,上传成功";
}
}
catch (Exception ex)
{
Label1.Text = ex.Message.ToString();
}我上面的代码实现了插入图片到sql derver数据库.
可是每次都要选择一个文件,如何实现不用手动选择啊?
比如批量将1.jpg,,2.jpg,,3.jpg.循环插入到数据库.
HtmlInputFile能否动态new出来,然后指定文件?????
小弟对asp.net是新手,麻烦详细说下!!

解决方案 »

  1.   

    本地盘上的好办,不要经过ieImage image=Image.FromFile("文件名"); //自己用程序写
    Stream theStream;
    Image.Save(theStream,图像格式);然后把theSteam 流存入数据库, 象你原来的方法一样
      

  2.   

    TO: (难得糊涂) 
      麻烦说得详细点啊.
    Image image=Image.FromFile("文件名"); //这行asp.net编译不通过啊
      

  3.   

    Image image=Image.FromFile("文件名");//这行asp.net编译不通过啊
    报什么错?
      

  4.   

    看看Personal Web Site Starter Kit
      

  5.   

    对了,这个需要 System.Drawing前面加
    using System.Drawing;
      

  6.   

    谢谢(难得糊涂),,对其他人要说的是,要么详细回答,要么别说!你还不如说看看asp.net