我的一个视图中的代码如下所示,如果您已登录,它会显示欢迎通知,如果您未登录,则会显示指向登录页面的链接.
<%
if (!Request.IsAuthenticated)
{
%>
<%= Html.ActionLink("Log On", "LogOn", "Account")%>
<%
}
else
{
%>
<img src="../images/newspic.gif" width="423" height="194"><br /><br />
<%
}
%>
Run Code Online (Sandbox Code Playgroud)
我想要的是,如果你没有登录,我希望它自动重定向到登录页面(为什么有额外的步骤)
关于如何从上面这个视图中自动重定向到另一个页面的任何建议.
您的视图应仅负责显示您的数据.您的控制器应该处理重定向逻辑.
已为此目的创建了授权属性.将其添加到您的控制器操作方法,如:
public class CustomerController : Controller {
[Authorize]
public ActionResult Home() {
return View("Home");
}
}
Run Code Online (Sandbox Code Playgroud)
或者,可以将其添加到Controller以应用于所有操作:
[Authorize]
public class CustomerController : Controller {
public ActionResult Home() {
return View("Home");
}
}
Run Code Online (Sandbox Code Playgroud)
然后在你的web.config中设置类似的东西
<authentication mode="Forms">
<forms loginUrl="~/Login" />
</authentication>
Run Code Online (Sandbox Code Playgroud)
如果用户获得授权,他们将显示"主页"视图.如果他们未获得授权,他们将被重定向到'/ Login'
| 归档时间: |
|
| 查看次数: |
1690 次 |
| 最近记录: |