Asp.net 从Global.asax中的代码隐藏调用函数

Asp.net 从Global.asax中的代码隐藏调用函数,asp.net,global-asax,Asp.net,Global Asax,如何从Global.asax中的asp页(代码隐藏)访问控件或函数 我在后台任务中使用下面的代码,该代码每60秒检查一次新电子邮件,我想更新一个标签,在default.aspx中显示新电子邮件的数量 void Application_Start(object sender, EventArgs e) { AddTask("CheckEmails", 10); } private void AddTask(string name, int seconds) { OnCacheR

如何从Global.asax中的asp页(代码隐藏)访问控件或函数

我在后台任务中使用下面的代码,该代码每60秒检查一次新电子邮件,我想更新一个标签,在default.aspx中显示新电子邮件的数量

void Application_Start(object sender, EventArgs e) 
{
    AddTask("CheckEmails", 10);
}

private void AddTask(string name, int seconds)
{
    OnCacheRemove = new CacheItemRemovedCallback(CacheItemRemoved);
    HttpRuntime.Cache.Insert(name, seconds, null, DateTime.Now.AddSeconds(seconds), Cache.NoSlidingExpiration,
    CacheItemPriority.NotRemovable, OnCacheRemove);
 }//addTask

 public void CacheItemRemoved(string k, object v, CacheItemRemovedReason r)
 {
    //Check New Emails and update label from .aspx
    AddTask(k, Convert.ToInt32(v));
 }//CacheItemRemoved

你为什么要这么做。请提供更多信息。
尽管您可以创建
默认页面的对象
并调用其函数
但是,如果这与页面无关,那么只有它才适合使用

编辑1 您不需要它从
应用程序启动
调用
您可以在页面加载时调用此函数(登录页面后调用)。
您可以使用相同的键检查缓存中的现有值。
如果存在,则不要修改缓存

否则,请将您的值放入缓存。

为公共函数创建一个单独的类,将其放入app_code文件夹,然后从Default.aspx和global.asax访问此函数……

使其成为
公共静态
。不过,这听起来不是一个好的设计决策。这个值是从哪里得到的如何从全局更新.aspx中存在的标签文本现在我可以从全局访问此类,但不能从此类访问.aspx,只需从.aspx.cs访问类,这不好,因为我需要更新标签的文本。您是否在类中创建了命名空间?我现在在类的开头添加了
命名空间名称
,但无法访问它您的类!:)使用您的命名空间。引用此链接>