2011-10-13 61 views
3

可能重複:
How to decode viewstate被確定有多少數據存儲在ViewState中每個控制

我有一個相當複雜的頁面我的工作,有很多用戶控件的,中繼器等。

該頁面上的ViewState已經膨脹到4MB以上,在回發時導致"Maximum Request Length Exceeded"錯誤。臨時修復將增加HttpRuntime中的maxRequestLength屬性,但這不能解決根本問題。

是否有人知道我該如何檢查/查詢ViewState以查看哪些控件是最大的違規者?我想嘗試和避免花費一堆時間來優化控制,只會給我幾個KB的節省,而在頁面上有其他人可能在ViewState中存儲幾百kB。

謝謝!

+0

弗裏茨洋蔥的ViewStateDecoder非常出色 - http://stackoverflow.com/questions/ 22814/how-to-decode-viewstate – StuartLC

回答

5

您可以使用:

  • Fiddler網頁調試工具
  • 啓用特定頁面跟蹤:<%@ Page Language="c#" Trace="true"%>
  • 啓用在web.config中整個應用程序跟蹤所以每個頁面會顯示很多有用的痕跡在底部
<configuration> 
    <system.web> 
    <trace enabled="true" pageOutput="false" localOnly="false"/> 
    </system.web> 
</configuration> 

幫助跟蹤秈稻信息職責範圍(你的情況)是:

  • 呈現大小字節
  • 的ViewState大小字節
  • 了ControlState-大小字節
+0

跟蹤是迄今爲止最有用的。謝謝! –

相關問題