ASP.NET中文件上傳下載方法集合
2006/10/20 9:56:22
文件的上傳下載是我們在實際項目開發過程中經常需要用到的技術,這里給出幾種常見的方法,本文主要內容包括:

  1、如何解決文件上傳大小的限制

  2、以文件形式保存到服務器

  3、轉換成二進制字節流保存到數據庫以及下載方法

  4、上傳Internet上的資源

  第一部分:

  首先我們來說一下如何解決ASP.net中的文件上傳大小限制的問題,我們知道在默認情況下ASP.NET的文件上傳大小限制為2M,一般情況下,我們可以采用更改Web.Config文件來自定義最大文件大小,如下:

  這樣上傳文件的最大值就變成了4M,但這樣并不能讓我們無限的擴大 MaxRequestLength的值,因為ASP.NET會將全部文件載入內存后,再加以處理。解決的方法是利用隱含的 HttpWorkerRequest,用它的GetPreloadedEntityBody和ReadEntityBody方法從IIS為ASP.NET 建立的pipe里分塊讀取數據。實現方法如下:

IServiceProvidERProvider=(IServiceProvider)HttpContext.Current;
HttpWorkerRequestwr=(HttpWorkerRequest)provider.GetService(typeof(HttpWorkerRequest));
byte[]bs=wr.GetPreloadedEntityBody();
.
if(!wr.IsEntireEntityBodyIsPreloaded())
{
 intn=1024;
 byte[]bs2=newbyte[n];
 while(wr.ReadEntityBody(bs2,n)>0)
 {
  ..
 }
}

  這樣就可以解決了大文件的上傳問題了。

  第二部分:

  下面我們來介紹如何以文件形式將客戶端的一個文件上傳到服務器并返回上傳文件的一些基本信息。

  首先我們定義一個類,用來存儲上傳的文件的信息(返回時需要)。

public class FileUpLoad
{
 public FileUpLoad()
 {}
 /**////
 /// 上傳文件名稱
 ///
 public string FileName
 {
  get
  {
   return fileName;
  }
  set
  {
   fileName = value;
  }
 }
 private string fileName;

 /**////
 /// 上傳文件路徑
 ///
 public string FilePath
 {
  get
  {
   return filepath;
  }
  set
  {
   filepath = value;
  }
 }
 private string filepath;

 /**////
 /// 文件擴展名
 ///
 public string FileExtension
 {
  get
  {
   return fileExtension;
  }
  set
  {
   fileExtension = value;
  }
 }
 private string fileExtension;
}

  另外我們還可以在配置文件中限制上傳文件的格式(App.Config):

下一頁
返回列表
返回首頁 主站蜘蛛池模板: 国产精品免费视频网站| 日本人成动漫网站在线观看| 免费人成视频在线| 蕾丝av无码专区在线观看| 国产精品伦理一二三区伦理| sao货水真多好浪好紧视频| 无码专区人妻系列日韩精品| 乳揉みま痴汉电车动漫中文字幕 | 女人张开腿让男人桶个爽| 中文字幕高清在线观看| 最新中文字幕免费视频| 亚洲日本在线观看网址| 91亚洲一区二区在线观看不卡| 成人在线观看免费| 久久午夜宫电影网| 最近中文字幕国语免费完整| 亚洲成av人片在线观看| 爱情岛永久免费| 免费黄色a级片| 美女女女女女女bbbbbb毛片| 国产亚洲精品91| 麻豆色哟哟网站| 国产精品一在线观看| 97在线观看中心| 女人18毛片a级毛片免费| 中文字幕35页| 新版bt天堂资源在线| 久久久久久国产精品免费免费| 日韩成年人视频| 五月天婷婷精品免费视频| 欧美另类69xxxxxhd| 亚洲欧美日韩综合久久久久| 狠狠干2022| 伊人久久大香线蕉无码| 福利视频导航网| 国产日韩在线视频| 337p中国人体啪啪| 国内大量揄拍人妻精品視頻| av在线亚洲男人的天堂| 夫妇交换性三中文字幕| www.天天干.com|