zoukankan      html  css  js  c++  java
  • ASP.net学习笔记

    这段时间利用工作之余想系统的再次去学习ASP.NET.刚好学习到了ASP.NET的三个对象Application,Server,Session觉得比较有用,先作为笔记记录下,方便以后查用,顺便也可以加深印象。因为理解时因人而异,文章中对对象具体的解释清参考MSDN官方文档。

      一、Application对象个人理解:应用程序及对象,当我们程序运行时Application就产生了。Application以键值对存储数据,可以将Application对象理解成对象的集合所属的类:HttpApplicationState 启用MSDN官方:ASP.NET 应用程序中多个会话和请求之间的全局信息共享ASP.NET 应用程序是单个 Web 服务器上的某个虚拟目录及其子目录范围内的所有文件、页、处理程序、模块和代码的总和。

      HttpApplicationState 类的单个实例在客户端第一次从某个特定的 ASP.NET 应用程序虚拟目录中请求任何 URL 资源时创建。对于 Web 服务器上的每个 ASP.NET 应用程序都要创建一个单独的实例。然后通过内部 Application 对象公开对每个实例的引用。

      应用程序状态不在网络场(应用程序被多台服务器承载)或网络园(应用程序被同一台计算机上的多个进程承载)中共享。

      如何使用:如果要使用Application,先可以添加一个ASAX文件,它的作用是初始化应用程序级或会话级变量。VS2008中可以直接添加 ASAX文件,而在VS2003中在你新建ASP.NETweb 应用程序时时已经为你创建好了。在VS20003的Global.asax中是以类的形式存在,而在VS2008中的Global.asax是以脚本文件形式存在(个人理解)。新建好之后,我们会看到Global文件中有以下事件:1、void Application_Start(object sender, EventArgs e)

      { //在应用程序启动时运行的代码} 2、void Application_End(object sender, EventArgs e)

      { //在应用程序关闭时运行的代码} 3、void Application_Error(object sender, EventArgs e)

      { //在出现未处理的错误时运行的代码} 4、void Session_Start(object sender, EventArgs e)

      { //在新会话启动时运行的代码} 5、void Session_End(object sender, EventArgs e)

      { //在会话结束时运行的代码。

      // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为// InProc 时,才会引发 Session_End 事件。如果会话模式//设置为 StateServer 或 SQLServer,则不会引发该事件。

      }二、Session对象个人理解:存储用户信息。会话:客户端(浏览器)想服务器端发送请求,服务器端响应后返回给客户端,这样的一个过程可以理解为一个Session(会话)

      所属的类:HttpSessionState MSDN官方:提供对会话状态值以及会话级别设置和生存期管理方法的访问。详细请参考MSDN关于 ASP.NET 会话状态常用属性:SessionID(唯一用户会话标识符) TimeOut(用户超时) LCID(本地标识符) Count(会话状态中的项目数)

      常用事件:void Session_Start(object sender, EventArgs e)和void Session_End(object sender, EventArgs e)

      三、Server对象个人理解:获取你所请求服务器的相关信息所属类:HttpServerUtility MSDN官方:提供用于处理 Web 请求的 Helper 方法。

      常用属性:ScrtiptTimeOut MachineName常用方法:Execute Transfer HTMLEncode,URLEncode,MapPath Execute:在服务器端去执行另一个页面,执行完成后,将结果返回到当前页面Transfer:类似于Response.Redirect()

      HTMLEncode:以纯文本形式输出HTML标记URLEncode:处理在通过URL传递参数时包含的特殊字符&变量分隔符

      知识点:1、application对象是应用程序级的,是所有用户共享的,而session是用户级的,其他用户不能访问其他用户的session 2、apolication和session都是键值对的集合对象3、会话断开或销毁超时时间一般为20分钟,可以在session_start事件中设置timeout的值,最小为1(1分钟)。还需要注意不是你把浏览器关闭就说明会话断开或销毁,而是你session的TimeOut超时或关闭World Wide Web Publishing服务,还可以是你机器正常关机。

  • 相关阅读:
    HTML元素解释
    Java命名规范
    HDU 1058 Humble Numbers(DP,数)
    HDU 2845 Beans(DP,最大不连续和)
    HDU 2830 Matrix Swapping II (DP,最大全1矩阵)
    HDU 2870 Largest Submatrix(DP)
    HDU 1421 搬寝室(DP)
    HDU 2844 Coins (组合背包)
    HDU 2577 How to Type(模拟)
    HDU 2159 FATE(二维完全背包)
  • 原文地址:https://www.cnblogs.com/momi/p/2407586.html
Copyright © 2011-2022 走看看