0

List<string>こんにちは私は1ページだけのポストバック全体で維持したい小さなものがあります。リストには10​​を超えるアイテムは含まれず、各アイテムは最大40文字です(機密データは含まれません)。

同様の質問がなされていることは知っていますが、これをViewStateまたはに保存することの間には多少のあいまいさがありSessionます。文字列の値が小さい場合でも、ViewState値のサイズが大幅に大きくなる可能性があると聞いています。リストを繰り返し処理し、Linqを使用してクエリを実行したいのですが、string[]配列を使用したほうがよいでしょうか。また、このリスト(控えめなサイズ)は格納しても問題ViewStateありませんか、それとも格納する必要がありSessionますか?ありがとうございました。

4

2 に答える 2

2

これの範囲についてもっと心配しますList<>ViewStateこの単一ページのみに限定されている場合は、 ;を使用しても問題ないと思います。それはまさにそれが意図したものです。

ただし、これを複数のページにわたって保持する必要がある場合は、Sessionorを評価する方が理にかなっていCacheます。

また、リストがユーザーごとに異なる場合、または複数のユーザー間で共有できる場合にも注意してください。その場合、私は に傾倒しCacheます。

最後に、おそらくこれについては反対票を投じられて忘却に陥るでしょうが、 SessionPageStatePersisterクラスViewStateを使用してサーバー側のメモリに保存するオプションを検討することもできます。

幸運を!

于 2012-04-03T23:16:42.733 に答える
1

悪用しない限り、ViewState に保存することは悪い考えではありません。リストが小さく、1 ページでしか意味がない場合は、それを選択してください。

ViewState は改ざんされる可能性があることを覚えておいてください。そのため、クライアントにそれを知られたくない場合は、最適です。それ以外の場合は、Session に保存します。

于 2012-04-03T22:57:09.607 に答える