我正在尝试为Umbraco站点连接global.asax Session_Start事件。我想在每次创建新会话时将某些用户信息设置到会话对象中。
到目前为止,我已将Global.asax文件更改为:
<%@ Application Codebehind="Global.asax.cs" Inherits="UmbracoCore.Global" Language="C#" %>
我的自定义Global类看起来像这样:
namespace UmbracoCore
{
public class Global : UmbracoApplication
{
public void Session_Start( object sender, EventArgs e )
{
Session[ "INIT" ] = 0;
SessionHelper.InitialiseSession( Session, Request );
//umbraco.library.setSession( "INITU", "1" );
}
}
}
我正在使用自定义逻辑将内容添加到SessionHelper.InitialiseSession中的会话中。
现在一切正常,第一次加载页面时,我正在很好地设置会话对象。但是,在页面加载完成后,Session_Start方法每10秒左右继续触发。浏览器中的会话对服务器仍然有效,但我不确定为什么要创建所有这些额外的会话。这是Umbraco正在做的事情吗?
我已经排除了favicon.ico丢失的问题,我的网站没有在HTTP和HTTPS之间进行任何切换,这可能会重置会话。
如果有人可以提供任何帮助,我将如何阻止所有这些额外的会话被创建,我将非常感激。
答案 0 :(得分:0)
这可能是在后台运行的计划任务之一,检查计划页面发布等内容。
尝试让您的会话开始记录正在运行的页面,如果是这样的话,您应该可以立即离开,因为该URL将是Umbraco后台办公室。