国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

用.Net的File控件上傳文件的解決方案

2024-07-10 12:40:11
字體:
來源:轉載
供稿:網友
在遍歷了csdn中所有關于上傳大文件的帖子以后,寫了這篇垃圾。(:-)) 

上傳大文件,有好幾種方法: 

1、思歸的HttpWorkerRequest方法,太難,看不懂:-(
2、利用第三方的控件 AspNetUpload 要錢!!算了,咱還是喜歡免費的。
3、修改web.config文件,但是不能捕獲錯誤。
4、通過ftp的方式上傳。服務器需要提供ftp服務。 

沒轍,只好選第三種方式,誰讓咱太蠢了呢!(太蠢了,沒有關系,要多吃魚,聽說吃魚能聰明點。) 

那就仔細專研第三種方式吧! 

修改Webcong文件: 

<system.web>
<httpRuntime maxRequestLength="40690"
useFullyQualifiedRedirectUrl="true"
executionTimeout="6000"
useFullyQualifiedRedirectUrl="false" 
minFreeThreads="8" 
minLocalRequestFreeThreads="4" 
appRequestQueueLimit="100" 
enableVersionHeader="true"
/>
</system.web>

其中與上傳有密切關系的是: 
maxRequestLength 
指示 ASP.NET 支持的最大文件上載大小。 
該限制可用于防止因用戶將大量文件傳遞到該服務器而導致的拒絕服務攻擊。 
指定的大小以 KB 為單位。 
默認值為 4096 KB (4 MB)。 
executionTimeout 
指示在被 ASP.NET 自動關閉前,允許執行請求的最大秒數。 
單位為秒,在上傳大的文件時把這個設的大一些。 
如果服務器內存512M,已可上傳大小160M的文件。(沒試過,csdn上眾帖子的一致意見。) 
到這里web.config的設置就已經結束。 
可是一旦上傳文件的大小超過了這個設置的文件大小范圍就會發生如下錯誤: 
該頁無法顯示 
您要查看的頁當前不可用。網站可能遇到技術問題,或者您需要調整瀏覽器設置。 
雖然解決不了,那也要捕獲這個錯誤啊!怎么辦呢? 
最近吃了幾條魚,想了想,由于這個錯誤是由file控件引發的前臺錯誤,所以在后臺想利用try...catch來捕獲是行不通的。 
于是想到了利用.NET的錯誤捕獲頁面的機制來處理。可行哦。 

1、先設置web.config
<customErrors mode="On"/> 
2、新建一個error.aspx 文件,專門用來捕獲錯誤的。
3、在上傳文件的aspx頁面的前臺頁面里添加page指令。ErrorPage="UploadError.aspx"
4、在error.aspx中添加一些代碼來判斷錯誤信息是否是file引起的前臺錯誤。
public class UploadError : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
Exception ex = Server.GetLastError();
if (ex != null)
{
Response.Redirect("../error.aspx");
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 青龙| 德惠市| 翁源县| 青川县| 泾源县| 类乌齐县| 芒康县| 武穴市| 宜丰县| 碌曲县| 德兴市| 彭州市| 宁城县| 余庆县| 青海省| 高青县| 黑龙江省| 平和县| 会东县| 阿图什市| 建阳市| 大洼县| 万盛区| 南通市| 兴化市| 东港市| 边坝县| 辽源市| 滦平县| 叙永县| 和田市| 崇明县| 溧水县| 涟水县| 萨嘎县| 贺州市| 普陀区| 噶尔县| 郓城县| 永清县| 都江堰市|