簡體   English   中英

異常詳細信息:System.Web.HttpException:超出最大請求長度

[英]Exception Details: System.Web.HttpException: Maximum request length exceeded

我試圖使用下面的代碼將Excel文件中的數據讀入ADO.NET數據集。 在Windows窗體應用程序中它可以工作,但在asp.net應用程序中它失敗了。

 public static DataTable ArchiveData(string fileName)
{
    FileStream stream = File.Open(fileName, FileMode.Open, FileAccess.Read);

    //Reading from a OpenXml Excel file (2007 format; *.xlsx)
    IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
    excelReader.IsFirstRowAsColumnNames = true;

    DataSet result = excelReader.AsDataSet();

    //Free resources (IExcelDataReader is IDisposable)
    excelReader.Close();
    return result.Tables["Archive data"];
}

堆棧跟蹤:

[HttpException (0x80004005): Maximum request length exceeded.]
   System.Web.HttpRequest.GetEntireRawContent() +8793522
   System.Web.HttpRequest.GetMultipartContent() +62
   System.Web.HttpRequest.FillInFormCollection() +236
   System.Web.HttpRequest.get_Form() +68
   System.Web.HttpRequest.get_HasForm() +8745879
   System.Web.UI.Page.GetCollectionBasedOnMethod(Boolean dontReturnNull) +97
   System.Web.UI.Page.DeterminePostBackMode() +63
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +133

或者有更好的方法從客戶端計算機讀取Excel文件到ASP.NET中的ADO.NET DataTable

在web.config文件中添加以下標記,並檢查它是否有效

<httpRuntime maxRequestLength="350000" enableVersionHeader="false" maxQueryStringLength="3584" executionTimeout="600"/>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM