2

これは、aspx ページのコード ビハインドです。パブリック変数と viewState のどちらを使用する必要があるかわかりません

Partial Class madeUpName
 Inherits System.Web.UI.Page
  Public vin As String = ""
  Public stk As String = ""

 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  'inside of here i use the variables
 end sub

 Protected Sub Page_Unload(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Unload
  'inside of here I also use the same variables
 end sub

ページのクラスで viewState 変数またはパブリック変数を使用する必要がありますか? どちらも同じことを達成しているようです。

4

3 に答える 3

3

ViewStateポストバック間で値を保持する場合に使用します。

値がページの存続期間中のみ存在する必要がある場合、通常の変数は問題なく機能します。

于 2013-02-21T18:02:23.367 に答える
1

情報の機密性があまり高くない場合は、非表示の入力に保存できます。

<input type="hidden" name="myvar" value="123" />

私はものをに入れるよりもそれを好む傾向がありViewStateます。さらに、後でこれらの値に簡単にアクセスできるようにするアクセサーを作成できます(私のC#構文を許してください)。

public int MyValue
{
    get { return int.Parse(Request["myvar"]); }
}

あなたがそれをあなたのクラスで財産のように使うことができるとき。

ViewStateそうでなければ、あなたは(同様に)ものを入れることができます

public int MyValue
{
    get { return int.Parse(ViewState["myvar"]); }
}
于 2013-02-21T18:41:19.600 に答える
1

ViewState、WebFormの状態をに渡って永続化するために使用されPostBacksます。Webフォームからコードビハインドに値を取得する場合は、ViewState値を使用してください。そうでない場合は、SessionStateアクセスしようとしているデータに応じて、またはを使用できCookiesますQueryString。パブリック変数は、またはなどPostBackに値を保存しない限り、毎回リセットされます。ViewStateSessionState

より詳しい情報:

Asp.NetViewStateを理解する

ポストバックasp.net間で変数を保存するための最良の方法は?

于 2013-02-21T18:09:34.943 に答える