2016-10-06 14 views
2

我想重定向到行動到另一個行動,如果方法。 我用如何將一個動作重定向到另一個動作內MVC5中的方法?

return RedirectToAction("ActionName","ControllerName"); 

但我得到錯誤。錯誤意味着它沒有擊中另一個動作。

Code

我的控制器代碼

 public ActionResult VisitCount(VisitorsViewModel objvvm) 
    { 
     var UserID = System.Web.HttpContext.Current.Session["UserID"].ToString(); 
     var objEmpDepUTID = db.UserRightsSettings.Where(u => u.UserID.ToString() == UserID).Select(e => new 
     { 
      objemployeeID = e.EmployeeID, 
      objdepartmentID = e.DepartmentID, 
      objusertypeID = e.UserTypeID 
     }).FirstOrDefault(); 

     var EmployeeID = objEmpDepUTID.objemployeeID; 
     var DepartmentID = objEmpDepUTID.objdepartmentID; 
     var UserTypeID = objEmpDepUTID.objusertypeID; 

     if (DepartmentID == new Guid("47D2C992-1CB6-44AA-91CA-6AA3C338447E") && 
      (UserTypeID == new Guid("106D02CC-7DC2-42BF-AC6F-D683ADDC1824") || 
      (UserTypeID == new Guid("B3728982-0016-4562-BF73-E9B8B99BD501")))) 
     { 
      return RedirectToAction("Index1", "NextFollowUp"); 
     } 
     else 
     { 
      return RedirectToAction("Index2","NextFollowUp"); 
     } 

    } 
    private ActionResult Index1() 
    { 
     return View(); 
    } 
    private ActionResult Index2() 
    { 
     return View(); 
    } 

上面的代碼無法正常工作。如果條件滿足,它不會觸及另一個行動。我嘗試了所有的方法,但我沒有得到任何解決方案。

+0

假設你的控制器被稱爲NextFollowUpController它應該工作。點擊F12並查看網絡活動,檢查它試圖重定向到的確切網址。 –

+0

是的我的控制器是NextFollowup控制器,在該圖像中提到,我使用調試點進行檢查。它沒有擊中Index1 Action –

+0

你需要使用瀏覽器調試器,F12 –

回答

2

你不能重定向到一個方法標記private。你需要使你的方法public

public ActionResult Index1() 
{ 
    return View(); 
} 
public ActionResult Index2() 
{ 
    return View(); 
} 
+0

是的,你是正確的stephen其工作感謝.. –

2

如果你是一個控制器內使用這種嘗試的這個

return RedirectToAction("Index1"); 

代替

return RedirectToAction("Index1", "NextFollowUp");

如果從其他控制器呼籲行動

RedirectToAction("Index1", "NextFollowUp"); 

或者試試這個代碼:

return View("ActionName"); 

像這樣:

if (DepartmentID == new Guid("47D2C992-1CB6-44AA-91CA-6AA3C338447E") && 
      (UserTypeID == new Guid("106D02CC-7DC2-42BF-AC6F-D683ADDC1824") || 
      (UserTypeID == new Guid("B3728982-0016-4562-BF73-E9B8B99BD501")))) 
     { 
      return View("Index1"); 
     } 
     else 
     { 
      return View("Index2"); 
     } 
+0

好吧,我有一個嘗試,讓你知道 –

+0

你的方法也工作謝謝。 –

相關問題