9

我正在为用户注册、显示、登录等创建一个网站。我目前正在尝试显示已登录用户的详细信息。但是在登录的 actionResult 中,我不知道如何调用显示的 actionResult?我是 asp.net 的新手。我需要建议

public ActionResult login()
{
    try
    {
        return View();
    }
    catch (Exception ex)
    {
        throw ex;
    }
}

[HttpPost]     
public ActionResult login(DEntities.Users user)
{
    try
    {
        services.CheckUser(user);
        controlsuccess = services.servicesuccess;
        if (controlsuccess == true)
        {

            return RedirectToAction("display");             
            //return View("display");
        }
        else
        { 
            return HttpNotFound();
        }
    }
    catch (Exception ex)
    {
        throw ex;
    }
}

public ActionResult display()
{
    return View();
}

[HttpPost]
public ActionResult display(int id = 0)
{
    try
    {
        DEntities.Users user = services.GetUserbyId(id);
        return View(user);

    }
    catch (Exception ex)
    {
        throw ex;
    }
}
4

1 回答 1

20

从操作中删除[HttpPost]属性display

如果两个动作都在同一个控制器中,那么只需传递动作名称:

return RedirectToAction("display", new { id = 1 });

或者,如果动作在不同的控制器中,则传递动作和控制器名称:

return RedirectToAction("display", "controllername", new { id = 1 });

或者如果有必要使用[HttpPost],可以学习如何 RedirectToAction使用POSTAction

于 2013-11-07T07:24:20.657 回答