Session_OnStart

Session_OnEnd
是针对一个客户端的

解决方案 »

  1.   

    我有一个应用程序WebApplication
    当客户端用户第一次访问我的WebApplication的时候我希望能够从数据库中读取某些内容或者写文件记录日志信息,比如说一些全局的变量等等,而第二个,第三个客户端访问是则不会做这个操作。
    当所有的客户端关闭了,则记录日志。我用了application_start(/end),似乎是针对所有的asp.net应用程序。
      

  2.   

    主窗体的form_load事件就是了啊
      

  3.   

    用Session_OnStart和Session_OnEnd
      

  4.   

    application_start(/end)是针对你这一个应用程序,而不是针对所有ASP.Net应用程序你这一个应用程序包括你项目里面所有的页面(也就是虚拟目录及其子目录下的页面)
      

  5.   

    你的要求就是要用application_start(/end),是针对web应用程序的,在iis中建立一个web应用程序就有一个application跟其对应。
      

  6.   

    啊。。但是我测试的时候:
    Public Sub Application_OnStart()
        Dim logFile As New System.IO.StreamWriter("c:\logFile.txt", True)
        logFile.WriteLine("my Application started at " & Now().ToString())
        logFile.Close()
        logFile = Nothing
    End Sub

    Public Sub Application_OnEnd()
        Dim logFile As New System.IO.StreamWriter("c:\logFile.txt", True)
        logFile.WriteLine("my Application ended at " & Now().ToString())
        logFile.Close()
        logFile = Nothing
    End Sub代码如上。
    当我第一次打开浏览器浏览程序的时候会有记录"myApplication started...",打开多个业正常,但是当我关闭所有的浏览该程序的时候,没有出现"myApplication ended...";并且再次打开浏览器浏览的时候也没有"myApplication started..."
      

  7.   

    Application_End只在应用程序结束(比如在IIS停止运行该站点,关闭服务器等)才能引发,而不是没有用户访问它时引发。
      

  8.   

    To lth_81(上海男生):
    应用程序是在第一个客户端访问的时候触发Application_Start事件的,然后应用程序就已经启动了,不管客户端是否关闭浏览器
    直到停止站点(通过IIS)才会触发Application_EndWeb程序是基于请求的,实际上客户端浏览器只是一种客户端,也可以通过其他程序发送请求,所以服务器端与客户端是无关的,客户端浏览器的打开和关闭不会影响服务器
      

  9.   

    To lth_81(上海男生):
    应用程序是在第一个客户端访问的时候触发Application_Start事件的,然后应用程序就已经启动了,不管客户端是否关闭浏览器
    直到停止站点(通过IIS)才会触发Application_EndWeb程序是基于请求的,实际上客户端浏览器只是一种客户端,也可以通过其他程序发送请求,所以服务器端与客户端是无关的,客户端浏览器的打开和关闭不会影响服务器