【发布时间】:2021-09-30 07:47:41
【问题描述】:
我正在使用 ASP.NET MVC 5 应用程序。从支付网关重定向回来后,我遇到了会话被破坏的问题。
是会议系统。我每年只使用 3 个月,直到去年才出现这样的问题,当我现在使用它时 我特别遇到了 Mozilla 和 google chrome 的问题,但在 Microsoft Edge 中没有遇到这样的会话问题
这是我的 Session 相关代码:
ConferenceSession profileData = new ConferenceSession
{
username = log.emailID,
cid = log.confid
};
Session["TstConfSESSION"] = profileData;
过滤器:
public class CustomFilter : FilterAttribute, IAuthorizationFilter
{
public void OnAuthorization(AuthorizationContext filterContext)
{
if (filterContext.HttpContext.Session["TstConfSESSION"] == null)
{
//filterContext.Controller.TempData.Add("RedirectReason", "Session destroyed - try again!");
filterContext.Result = new RedirectResult("/");
}
}
}
响应控制器
[CustomFilter]
[HttpPost]
public ActionResult payment(string id, FormCollection frm)
{
// payment gateway response code
}
我在web.config 中添加了这些设置以增加会话时间:
<system.web>
<!-- Increase session time for payment gateway -->
<sessionState timeout="20"></sessionState>
</system.web>
【问题讨论】:
标签: c# session asp.net-mvc-5 session-state