0

Asp.netサーバーコントロールをキャッシュに保存することは可能ですか/悪い考えですか?

コントロール、つまり HtmlGenericControl を作成して Page.Cache に追加し、OnInit() で取得してページ コントロール コレクションに追加するのは悪い考えですか?

それとも、ParseControl を使用した方が良いですか?

4

2 に答える 2

1

かなり危険です。ページが呼び出されるたびに、そのインスタンスを取得します。このインスタンスには、デザイナーが配置したすべてのコントロールのインスタンスが含まれます。コントロールのインスタンスをキャッシュに格納すると、ページの複数のインスタンスがコントロールのインスタンスを共有する状況に陥る可能性があります。この制御データ部分も共有されるため、この部分に何が入るかに注意する必要があります。

于 2012-11-24T23:06:58.117 に答える
0

コントロールはページに固有であるため(たとえば、Pageプロパティがある)、キャッシュに保存して複数のページ間で共有することはできません。代わりにフラグメントキャッシングを検討するかもしれません。

于 2012-11-24T23:07:38.077 に答える