C#MVC ActionLink在重新加载页面之前清除会话

时间:2017-03-26 15:02:20

标签: c# asp.net-mvc session actionlink

我有一个简单的表单页面,用户可以在其中填充一些数据。在我发帖后,我需要保留所有数据,因此如果用户想要更改数据,他/她可以。保存数据后,我将Client对象存储在Session中,每次按“保存”按钮,我都会检查Session中是否有用户。

现在,当我想要创建新用户时,我按@Html.ActionLink("New client", "NewUser");。因此,此链接会重新加载页面并清除Session

请注意,"New user"应该重定向到Index,但我设法让它像这样工作,但这不是有效的方法。

控制器代码:

public ActionResult Index()
{
    return View(_vm);
}

public ActionResult NewUser()
{
     Session["newClient"] = null;
     return RedirectToAction("Index");
}

1 个答案:

答案 0 :(得分:1)

清除session只能在后端完成,因此您必须采取措施清除会话,但不需要return RedirectToAction("Index");而是返回视图

public ActionResult NewUser()
{
     Session["newClient"] = null;
     return View("Index",_vm);
}

因为您redirecting index视图用于创建新用户