2011-06-19 1 views
0

私は自分のウェブサイトを展開しようとしていますが、いくつかのテストを実行した後、ビューステートが各ページでは大きすぎることがわかり、1つのサーバープロセスで膨大なメモリ。特定のコントロールのビューステートを無効にする

コントロールでviewstateを無効にしたいのですが、無効にすることができます。EnableViewState="false"ですが、これをコントロールに追加する前に、コントロールを無効にすることができます。

誰でもコントロールがビューステートを無効にする条件を教えてください。

例:

<a id="A5" href="~/" runat="server"> 
    <img src="~/images/logo.png" runat="server" /> 
</a> 

が、私はこれらの2つのコントロールにビューステートを無効にするべきでしょうか?彼らは決して変更されず、本質的に静的リソースです。

+0

コンテンツのみのページでは、ページレベルで無効にします。あなたのケースでは、ViewStateが大きい特定のページだけですか?たとえば、Gridを持つページなどですか? – IrishChieftain

答えて

2

はい、イメージやリンクなどのコントロールで安全に無効にできます。

私はトップレベルの町、つまりページレベルから始めます。一般的に、サイトでの作業が終了したら、最初はすべてのコンテンツオンリーページでViewStateをページレベルで無効にします。

次に、作業フォーム/アプリケーションページを見て、リンク/画像コントロールをローカルで無効にします。ポストバックを介して状態を保持する必要がないものはすべて候補です。 GridViewsはWRTのViewStateサイズの通常の犯罪者であり、一般的には自分自身でListViewを使用する傾向があります。グリッドではコントロールのネストを特に避けています。私はUIを設計し始めた瞬間からこれを念頭に置いています。

関連する問題