分页期间的OutOfMemory

时间:2010-04-30 18:58:52

标签: asp.net

我正在使用ObjectDataSource,ListView,CustomPaging

如果总行数太大,我得到OutOfMemory异常,似乎它是由某些数组引起的,我不明白,因为总行数不应该使任何数组都被元素填充,页面大小做!!

这是记录器。

************ EXCEPTION#3:4/30/2010 9:43:07 PM System.Web.HttpUnhandledException:抛出了类型'System.Web.HttpUnhandledException'的异常。 ---> System.OutOfMemoryException:抛出了类型'System.OutOfMemoryException'的异常。    在System.Web.UI.WebControls.ListView.CreateChildControls()    在System.Web.UI.Control.EnsureChildControls()    在System.Web.UI.WebControls.ListView.get_Controls()    在System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)    在System.Web.UI.Control.LoadViewStateRecursive(Object savedState)    在System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)    在System.Web.UI.Control.LoadViewStateRecursive(Object savedState)    在System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)    在System.Web.UI.Control.LoadViewStateRecursive(Object savedState)    在System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)    在System.Web.UI.Control.LoadViewStateRecursive(Object savedState)    在System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)    在System.Web.UI.Control.LoadViewStateRecursive(Object savedState)    在System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)    在System.Web.UI.Control.LoadViewStateRecursive(Object savedState)    在System.Web.UI.Page.LoadAllState()    在System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)    ---内部异常堆栈跟踪结束---    在System.Web.UI.Page.HandleError(例外e)    在System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)    在System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)    在System.Web.UI.Page.ProcessRequest()    在System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)    在System.Web.UI.Page.ProcessRequest(HttpContext上下文)    在ASP:.default_aspx.ProcessRequest(HttpContext context)中的c:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files \ flickrdemo \ 15752207 \ c63ea96c \ App_Web__8yxn9sb.0.cs:line 0    在System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()    在System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)


1 个答案:

答案 0 :(得分:0)

我现在得到了它,似乎在感觉ObjectDataSource后面创建了一个大小为Total rows的数组,在这种情况下太大了,我知道因为

1- DataPager正在渲染基于Datasource的页数。 2-创建了大阵列。 3-和不,没有大数据只检索15个元素。

我无法验证这个解释,但我将总数限制为可以解决。