2011-06-27 20 views
6

ASP.NET WebFormでデータをコードの背後から見えるように渡すための規則は何ですか? たとえば、ASP.NET MVCでは、ViewDataはキー値コレクションまたは厳密に型指定されたクラスオブジェクトです。では、ASP.NET WebFormの場合、人々は何をしますか?ASP.NET MVCのViewDataに相当するASP.NET WebFormsとは何ですか?

私は、プロパティやクラスのメンバーを作成したり、Page.Itemsに追加することができますが、それ以外に何があるのでしょうか?

答えて

7

ASP.NET MVCのすべての概念はASP.NETフォームにマップされないと思うのは、Webアプリケーションを構築する2つの異なるパラダイムだからです。

WebFormsでは、ほとんどの場合、コントロールを処理してプロパティを設定するため、データを渡す必要はありません。しかし、にはがあるので、Page.ItemsまたはHttpContext.Current.Itemsを使用するか、ビューでアクセスするPageプロパティを作成します。

実際に使用されているWebFormsには、ViewDataまたはViewModelと直接同等のものはありません。 Page.Itemsは最も近いものです。

3

直接の同等物はありませんが、 "HttpContext.Current.Items"コレクションはコンテキストを渡すことなくどこからでもアクセスできます(System.Webに依存するアセンブリを作成しますが)。

+0

ない「HttpContent.Currentはありません。アイテム "プロパティ。 – maxwellb

+0

ミスタイプ。それが価値あるものであることを訂正しました。 – Swanny

0

ViewStateを使用できます。

ビューステートは、ポストバック時に保持する必要がある値を格納できるASP.NETページのリポジトリです。ビューステートは、通常、ユーザーまたはセッションデータではなく保持する必要があるページ変数に使用されます。たとえば、ページがサーバー

に送られる次回で詳細を確認してくださいページロードイベント中にアクセスされるビューステートの情報を保存することができます:https://msdn.microsoft.com/ro-ro/library/ms227551(v=vs.85).aspx

関連する問題