Search code examples
c#asp.net-mvcasp.net-mvc-4controller

How to call another controller Action From a controller in Mvc


I need to call a controller B action FileUploadMsgView from Controller A and need to pass a parameter for it.

Its not going to the controller B's FileUploadMsgView().

Here's the code:

ControllerA:

private void Test()
{
    try
    {   //some codes here
        ViewBag.FileUploadMsg = "File uploaded successfully.";
        ViewBag.FileUploadFlag = "2";
        RedirectToAction("B", "FileUploadMsgView", new { FileUploadMsg = "File   uploaded successfully" });
    }
}

ControllerB (receiving part):

public ActionResult FileUploadMsgView(string FileUploadMsg)
{
    return View();
}

Solution

  • Controllers are just classes - new one up and call the action method just like you would any other class member:

    var result = new ControllerB().FileUploadMsgView("some string");