2012-08-31 22 views
0

如何從一個的ActionResult傳遞一個標識到另一個MVC3我嘗試使用會話,但如何做,而無需使用會話概念通過標識從一個的ActionResult到另一個MVC3無會話

我使用的是基於Ajax的意見

我的ActionResult 1

public ActionResult A(int id) 
{ 
    Session["mId"] = Id; 
    return View(); 
} 

,我想在這裏通過

public ActionResult B(int mid) 
{ 
    mId =Convert.ToInt32(Session["mId"]); 
    return View(); 
} 
+0

有沒有你不能只使用一個Cookie的一個原因? – joocer

+1

主要優先事項是開發應用程序,而不使用會話 – user1501399

+0

嘗試在請求中包含信息 – VJAI

回答

0

可以使用Controller.RedirectToAction方法

public ActionResult A(int id) 
{ 
//Session["mId"] = Id; 
return RedirectToAction("B",new {mid=id}); 
} 
+0

這將是'new {mid = id}'? – VJAI

+0

@Mark感謝您指出 – Rafay

2

我也儘量避免會議在可能的情況。關於您發佈的代碼的評論,請確保它正確縮進。如果縮進正確,很容易閱讀。

RedirectToAction方法根據您提供的參數重定向到指定的操作方法。

你2種的操作方法可能如下:

public ActionResult A(int id) 
{ 
    // Always check incoming parameters 
    // Check that id is not zero or negative 

    return RedirectToAction("B", new { mid = id }); 
} 

public ActionResult B(int mid) 
{ 
    // Check that mid is not zero or negative 

    // Now you can do with mid what you need to do, for example: 
    int myId = mid; 

    return View(); 
} 
相關問題