2

C# での使用方法に混乱していますViewState。たとえば、次を使用する利点は何ですか。

ViewState["VST"]="Value1";

Lable1.Text= ViewState["VST"].ToString();

私が使用できるのに対し:

string container= "Value1";
Lable1.Text= container;
4

4 に答える 4

4

ViewState は、ページのポストバックと共に保持される変数で構成されます。これは、変数がクライアントに送信され、クライアントがそれらをページ全体と共に送り返すためです。

したがって、次の場合:

string container= "Value1";
Lable1.Text= container;

次に、ユーザーがページを見て送信ボタンを押すと、container文字列は存在しません。

ただし、ViewState を使用する場合、ViewState["VST"] は、ユーザーがページを送信して送り返すときに「更新」されるため、値を保持します。

ここで詳細を読み、ASP.NET ページのライフ サイクルについても理解してください。

于 2013-02-11T07:57:11.890 に答える
2

ドキュメントに従って:

ビュー ステートは ASP.NET ページ フレームワークによって自動的に使用され、ポストバック間で保持する必要がある情報を永続化します。この情報には、コントロールのデフォルト以外の値が含まれます。ビュー ステートを使用して、ページに固有のアプリケーション データを格納することもできます。

詳細については、次のリンクを参照してください: http://msdn.microsoft.com/en-us/library/bb386448(v=vs.100).aspx

于 2013-02-11T07:59:28.110 に答える
1

ポストバック後も値を保持する場合は、ViewState が最適なオプションです。

于 2013-02-11T07:59:03.587 に答える
1

アプリケーションがポストバックを行うたびに、コントロールの現在の値が消去されます。したがって、ページ内に値を保存するには、それらを ViewState に保存できます。もちろん、最初に EnableViewState プロパティを true に設定する必要があります。追加情報、複数のページにジャンプするときに値または状態を保存する場合は、代わりに Session を使用できます。

于 2013-02-11T08:13:19.020 に答える