微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajax – .Net MVC Partial View会话到期时加载登录页面

我正在使用.net MVC 4构建一个Web应用程序.

我有ajax表单来编辑数据.

如果用户空闲15分钟,它将使用户的会话失效.当这种情况发生时,如果用户单击编辑按钮,它将加载部分内容中的登录页面,现在当前会话过期.

编辑链接 – csHTML代码

@Ajax.ActionLink("Edit",MVC.Admin.Material.ActionNames.TagEditorPanel,MVC.Admin.Material.Name,new { isView = "false",id = Model.ID.ToString() },new AjaxOptions { HttpMethod = "GET",UpdateTargetId = "materialTagBox",InsertionMode = InsertionMode.Replace },new { @class = "editlinks" })

控制器/动作代码

[Authorize]
public virtual ActionResult TagEditorPanel(bool isView,int id)
{
   //do something
   return PartialView(MVC.Admin.Material.Views._tag,response);
}

Web.config文件

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>

我明白为什么会发生这种情况.我不知道如何解决它.我想防止它,我想直接将用户重定向登录页面.我该如何实现?

提前致谢..!!!

也许是一个奇怪的答案,但您可以将表单身份验证中的重定向位置更改为使用javascript将窗口位置设置为登录页面页面.

Web配置

<authentication mode="Forms">
  <forms loginUrl="~/Account/RedirectToLogin" timeout="2880" />
</authentication>

帐号控制器

public ActionResult RedirectToLogin()
{
    return PartialView("_RedirectToLogin");
}

_RedirectToLogin视图

<script>
    window.location = '@Url.Action("Login","Account")';
</script>

原文地址:https://www.jb51.cc/ajax/159879.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐