2

我创建了一个 .cs 文件,我在其中检查会话值。
我正在使用如下会话

 HttpContext.Current.Session["usrprof"]

它写在一个简单的 .cs 文件中。
如果我在控制器中,我可以使用,但我可以在正常的 .cs 文件中使用它
如果我在 Session 中没有得到任何东西,我可以使用重定向到操作吗?

if (HttpContext.Current.Session["usrprof"] == null)
//redirect to action.
4

4 回答 4

2

您可以简单地使用 Redirect from Response 对象

if (HttpContext.Current.Session["usrprof"] == null)
{
    HttpContext.Response.Redirect("/Controller/Action");
}

希望能帮助到你

于 2013-07-01T09:36:17.327 回答
0

您可以Session在您的 CS 文件中使用,是的,只要您有权访问该Session对象。

要使用RedirectoAction您可以执行以下操作:

public ActionResult TestMethod()
{
    if (HttpContext.Current.Session["usrprof"] == null) {
        return RedirectToAction("Index");
    }

    return View();
}

它将检查 if usrprofis null,是否将它们重定向到Index(或您的视图)。否则,如果userprof不是null,则返回默认视图。

于 2013-07-01T09:37:13.613 回答
0

HttpContext.Current是所有代码都可以使用的静态变量 - 当不在 Web 上下文(即 Web 应用程序)下运行时将为空。

于 2013-07-01T09:37:28.663 回答
0

如果要从cs文件重定向,则必须从响应对象重定向,如下面的代码所示

   HttpContext.Current.Response.Redirect(~/Account/Login, true);

在上面的代码中 Account is Controllername is Login isAction

于 2016-11-24T07:26:21.600 回答