如何上傳圖檔到 Server 端的資料庫 |
缺席
|
eric039
中階會員 發表:57 回覆:126 積分:51 註冊:2002-11-30 發送簡訊給我 |
|
OsX
版主 發表:6 回覆:151 積分:111 註冊:2003-05-03 發送簡訊給我 |
Hi, 試試看下面的方法, 資料庫是 SQL Server
using System.Web; using System.IO; foreach ( HttpPostedFile aFile in Request.Files ) { if ( aFile.ContentLength > 0 ) { string[] aSplit = aFile.FileName.Split( '\\' ); string aFullPath = Server.MapPath( @"TempDir\" aSplit[aSplit.Length-1] ); aFile.SaveAs( aFullPath ); DBCommand1.CommandText = " insert into TABLE " " ( FileName, " " FileContent ) " " values ( @F1, " " @F2 ) "; DBCommand1.Parameters.Add( "@F1", SqlDbType.VarChar ); DBCommand1.Parameters.Add( "@F2", SqlDbType.Image ); DBCommand1.Parameters["@F1"].Value = aFullPath; FileStream aStream = new FileStream( aFullPath, FileMode.OpenOrCreate, FileAccess.Read ); using ( BinaryReader aReader = new BinaryReader( aStream ) ) { DBCommand1.Parameters["@F2"].Value = aReader.ReadBytes( (int)aReader.BaseStream.Length ); aReader.Close(); } DBCommand1.Connection.Open(); try { DBCommand1.ExecuteNonQuery(); } catch ( Exception Ex ) { lbMessage.Value = string.Format( "上傳檔案失敗, 檔案名稱: {0} 原因:{1}", aFile.FileName, Ex.Message ); } finally { DBCommand1.Connection.Close(); } File.Delete( aFullPath ); } } |
eric039
中階會員 發表:57 回覆:126 積分:51 註冊:2002-11-30 發送簡訊給我 |
|
OsX
版主 發表:6 回覆:151 積分:111 註冊:2003-05-03 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |