【发布时间】:2017-01-03 19:41:12
【问题描述】:
我正在使用 ASP.NET 核心 Razor 引擎。我想确保用户是否转到除了索引页面之外的任何其他页面(cshtml 文件)将它们重定向到索引页面。
索引页面是用户登录的地方。我的策略是在每个页面上显示用户的名字。如果 first name 为 null 则重定向到索引页面。
我遇到了如何重定向的问题,或者有更好的方法吗?
这是我的代码:
<h1>Hello @TempData["first_name"] @TempData["last_name"]</h1>
@if(TempData["first_name"]!= null)
{
@{Response.Redirect("~/Index");
}
【问题讨论】:
-
不要那样做。相反,请使用操作过滤器。
-
您不是从 view 重定向,而是从 controller 重定向。或者,如果想要在许多地方执行相同的重定向逻辑(在这种情况下听起来很像),您可以向中间件添加更通用的东西(如上面建议的操作过滤器),以便默认执行所有动作。
-
@Aaron 你如何验证用户身份?
标签: c# asp.net asp.net-mvc razor asp.net-core