2016-06-27 3 views
0

私のセッション変数に問題があります。セッションにオブジェクトを追加しているので、次のページ(アンケートの種類を作成する)に移動するときに、別のコントローラアクションでこれらの値を取得し、保存された値を使用して計算を行うことができます。セッション変数が失われているのはなぜですか?

また、この機能は、異なる結果を得るために入力を変更する必要がある場合、アンケートを逆戻りするために使用されるとも言われています。しかし、後ろに行くと、変数がなくなり、コントローラのアクションコードが失敗し、null参照例外が返されます。

これがなぜこれを行うのですか?

Session["UserInfo"] = myObject; 

と私は、これらのオブジェクトを失ってるなぜ

InputData data = (InputData) Session["UserInfo"]; 

いかなる理由のように取得する:私は、以下の方法を使用してセッションに変数を追加しています。私が戻ってもう一度submitをクリックすると、セッションに戻り、次のページで使用できるようになります。私はこれがセッションタイムアウトの問題ではないと私は20分以内に、通常は30秒のように(私はシステムを開発しており、テストや変更など)

+0

[これ](http://stackoverflow.com/a/6305647/181087)を試しましたか? – NightOwl888

答えて

0

私はこれを解決しました私のアクションコントローラーのGETとPOSTリクエスト。私は明示的に2つのコントローラアクション(HTTPGETとHTTPPOST)を指定していないので、すべてのリクエストが同じアクションになるため、ajax getリクエストとして何もポストされていないため、NULLでセッション変数をオーバーライドしていました。

2つのアクション結果をセットアップします。HTTP POSTとHTTPは、入力パラメータ付きのものと、それ以外のものを取得します。コーヒーと新鮮な脳のカップを持つまで、決して私の心を越えた。

関連する問題