2016-12-20 14 views
0

全体のすべての方法で使用可能な共有財産を作成します最初のアクションが2番目のものでは利用できません...は、私はこのようにそれを定義した私のC#のコントローラで共有プロパティを実装しようとしているコントローラのC#

私はそれを静的と宣言できますが、静的変数はWebでは避けるべき解決策ではありません。

編集:より詳細に問題を説明するために:

propretyの_gu_idが最初ActionFirst方式に設定されている場合、私は静的変数を使用せずに、ActionSecond方法でその値を取得できるようにする必要がありますが...

+1

XY問題。あなたは問題があります。解決策は「自分のコントローラーにメンバー変数を作成する」と思っています。コントローラーは要求ごとに作成されるため、これで解決しようとしている問題を説明してください。おそらくセッション、トークン、ヘッダーなどに何かを保存する必要があります。 – CodeCaster

+0

@ CodeCaster問題は次のとおりです。変数GUIDは、最初のメソッドで設定すると2番目のメソッドで使用できる必要があります...私はこれに静的変数を使用できると述べましたが、それらとの不快な経験... – User987

+0

@コードキャストしたがって、最初のメソッドで_gu_id変数を設定すると、2番目のメソッドが呼び出されると、最初のメソッドで設定された2番目のメソッドで_gu_id値を持つ必要があります。 – User987

答えて

4

新しいコントローラの新しいアクションメソッドにリダイレクトするたびに、これは新しいリクエストであり、探しているようにあるリクエストから別のリクエストに値を保持することはできません。

代わりにこのようなセッション変数を使用してください。

Session["guid"] = "YourValue"; 
2

あなたが永続的なセッション変数(通常は良いアイデア)を使用して避けている場合は、MVCはまた、リダイレクトの間でデータ上に掛けるためTempDataを提供しています。

+0

TempData ["Key"]のような意味ですか? – User987

関連する問題