1

asp.net Web サイトを開発しています。aspx ページがあります。ポストバック中に値をリセットしてはならない変数を使用したいのですが、別のページに渡して戻るときにリセットする必要があります。また、C# のコード ビハインドでこの変数の値を変更しています。したがって、必要に応じて変更する必要があり、ポストバック中にリセットする必要はなく、別のページに移動したときにリセットする必要があります。

使ってみた

public int
public static int
protected int

しかし、どちらが正しく機能しているのかわかりませんでした。

4

2 に答える 2

4

ポストバックを介してデータを保持する機能は、実際には変数のスコープまでではありません。public、protected、private のいずれを選択しても問題ありません。

あなたが探しているテクニックは、Session StateまたはView Stateと呼ばれます。
Session state異なるページ間およびview state同じページ内でデータを保持します。実際には、3 番目のアプリケーション状態オブジェクトもあり、さまざまなユーザー セッション間でデータをグローバルに保存します。

最も単純な形式では、次のようなビュー ステートを使用します。

string myString = "123";
ViewState["MyString"] = myString;

そしてポストバックの後、Page_Loadメソッドで:

myString = ViewState["MyString"].ToString();
于 2012-05-27T18:39:22.463 に答える
1

調べる

Session["yourvar"] = 123; 

Application["globalvar"] = 456;

msdn ドキュメントはこちら

于 2012-05-27T18:37:51.137 に答える