我刚刚意识到,在没有www的情况下从www.website.com重定向到website.com会话时会丢失。
但是我很幸运,我可以设置服务器所以所有重定向都以www开头。将来我不希望我的应用程序依赖于服务器,我想让它依赖于代码。
例如:
@Html.Hidden("PageManagerUrl", Url.Action("PageManager","Admin"))
生成/Admin/PageManager/
,我使用location.href = url(当网址为/Admin/PageManager/
时。
我不是100%肯定我会在第一次重定向时丢失会话,但是当我测试它但是重新定向前后,大约第3或第4次时,会话将丢失。将服务器设置设置为:
后Preferred domain * www.website.com
Select the URL (either with or without the www. prefix) to which site visitors will be redirected via a SEO-safe HTTP 301 redirect.`
会话永远不会再次丢失。所以我想知道,如何在不丢失会话的情况下进行最佳重定向?请举例说明如何从控制器和javascript / views中进行操作。
答案 0 :(得分:0)
你有任何global.asax文件吗?
如果是,那么请检查它是否包含这两种方法签名。
protected void Session_Start(object sender,EventArgs e) {
}
protected void Session_End(object sender,EventArgs e) {
}