2016-04-29 12 views
0

TempDataを使用して同じコントローラ内の2つのアクションメソッド間でGUIDを渡していますが、私はそれを呼び出す2番目のメソッドでnullを取得しています。ヌル値を取得しています。ここ
は、私がこれまでに何ができるかです:TempDataを使用してGUIDを渡す方法

[HttpPost] 
public ActionResult ForgotPassword(ForgotPasswordModel model) 
{ 
    var uniqueIdForUser = db.Database.SqlQuery<RequestResetPasswordModel>("spResetPassword @param1", new SqlParameter("param1", user.ADMIN_USERNAME)).OrderBy(m => m.UserId).FirstOrDefault(); 
    TempData["uniqueIdForUser"] = uniqueIdForUser.Id; 
} 

[HttpPost] 
public ActionResult ResetPassword(ResetPasswordModel model) 
{ 
    Guid uniqueid = (Guid)TempData["uniqueIdForUser"]; 
    return View(); 
} 
+0

ResetPasswordはいつ呼び出されますか? –

+0

@BonMacalindongそのポストメソッド。ユーザーがサブミットボタンを押したときに呼び出されます。 – sumedha

+0

ForgotPasswordビューから、それをResetPasswordにポストしますか? ResetPasswordに[HttpPost]を入れます。 –

答えて

0

あなたはこのためSession["uniqueIdForUser"]を使用し、あるいはどこかのデータベース内のユーザーオブジェクトに値を格納する必要がありますどちらか。パスワードのリセットを要求してから実際に実行するまでの時間が長くなる可能性があります。

+0

私もセッションで試してみましたが、まだnull参照例外が返されます。私はすでにdbテーブルに値を格納していますが、セッションオブジェクトの値とdb値を比較し、データベースのレコードを更新したいとします。 – sumedha

+0

NullReferenceExceptionはどの行(正確に!)で発生しますか?必要に応じて、質問にコードを追加/編集してこれを表示します。 –

+0

これは既に問題になっています。セッションを呼び出すときにResetPasswordメソッドで – sumedha

関連する問題