2012-07-09 32 views
2

我有一個包含提交按鈕和FileUpload控件的web表單(.net framework 4)。當我從visual studio 2010調試網站時,表單按照預期顯示。當我上傳大小大於438k的文件時(根據我的觀察結果,最大文件大小的實際值未知,但對於大小爲200K的文件正在工作),單擊按鈕時出現以下錯誤。HTTP錯誤400-由於vb.net中的FileUpload控制造成的錯誤請求

Server Error in '/Dpp2012New' Application. 
HTTP Error 400 - Bad Request. 
Version Information: ASP.NET Development Server 10.0.0.0 

當我上傳大小小於上述限制的文件時,代碼功能照常運行。 onclick事件處理程序代碼隱藏是:

<system.web> 
     <httpRuntime maxRequestLength="102400" executionTimeout="360"/> 
    </system.web> 

這應該已經解決了issue.But它:

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click 
    If FileUpload1.HasFile Then 
     MsgBox("Has file!") 
    End If 
End Sub 

通過網劃傷( SO POST)後,我在web.config中添加了此纔不是。 任何幫助解決這個問題將不勝感激。

+0

您是否啓用了自定義錯誤頁面或調試的第一次機會例外? – STW 2012-07-09 18:14:54

+0

你是什麼意思的自定義錯誤頁面?或第一次機會例外?以及如何檢查它們是否已啓用?@STW – rahulserver 2012-07-09 18:17:16

+1

「提交」按鈕中存在哪些代碼? – 2012-07-09 18:17:44

回答

2

請調試您的網站並檢查您是否連接到數據庫?我認爲你沒有連接。 如果您在上傳大文件時遇到問題,那麼您必須將以下屬性添加到您的webconfig文件中。

<system.web> 
<httpRuntime executionTimeout="110" maxRequestLength="20000" /> 
</system.web> 

maxRequestLength是最大文件大小。

更新回答: 在不同的瀏覽器上運行您的網站,如谷歌瀏覽器,Internet Explorer。

+0

是的,我連接到數據庫。connectionString變量被定義爲一個全局變量在vb文件的開頭。我試圖調試網站,但它沒有達到斷點,即使在onclick的起始行事件處理器!在它給出400錯誤之前! – rahulserver 2012-07-10 06:39:44

+0

嘗試一件事,向網站添加新頁面,將整個代碼從此頁面複製到新頁面,並檢查代碼是否在新頁面上工作。 – 2012-07-10 06:44:06

+0

仍然無法正常工作,然後用一個簡單的按鈕和一個文本框創建了一個新頁面。在按鈕的onclick處理程序中,我放置了一個消息框,它顯示了使用javascript alert的文本框中輸入的內容。它工作正常。這表明存在問題在問題表單的onclick事件處理程序中。 – rahulserver 2012-07-10 07:01:18