转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 站长学院 >> Web开发 >> 正文
学习ASP.NET-初探Application状态         ★★★★

学习ASP.NET-初探Application状态

作者:闵涛 文章来源:闵涛的学习笔记 点击数:622 更新时间:2009/4/23 10:49:23

学习ASP.NET-初探Application状态
nickcheng

  大家都知道在ASP.NET中,浏览器和Web服务器之间的连接是所谓的“无状态连接”。整个连接过程如下:

1、连接到服务器
2、告诉服务器访问者希望访问的内容
3、服务器返回访问者需要的内容
4、和服务器断开连接,同时丢失所有的用户信息

  正是这样,我们才会用到Application、Cookie、Session这些东西来达到保存特定的用户信息的目的,在本文中我们要谈的是Application。

  Application的原理是在服务器端建立一个状态变量,来存储所需的信息。要注意的是,首先,这个状态变量是建立在内存中的,其次是这个状态变量是可以被网站的所有页面访问的。这就意味着它只能存储一些要公布的信息,而不能存储一些比较个人的信息了!

下面看一个例子:

//test1.aspx
<%@ Page Language="C#"%>
<html>
  <body>
    <%Application["CompanyTelephone"]="123456789";%>
    <b>Application state changed successfully</b>
  </body>
</html>

----------------------------------------------------------

//test2.aspx
<%@ Page Language="C#"%>
<html>
  <body>
    <b>Company Telephone =
    <%
      Response.Write(Application["CompanyTelephone"]);
    %>
    </b>
  </body>
</html>

p.s. 以上是两个文件,要分开建立。

  在浏览器中调用test1.aspx文件,你会看到浏览器中显示:

Application state changed successfully

  这意味着我们成功地建立了一个Application状态。然后,再调用test2.aspx文件,这时就可以看到我们要的结果了:

Company Telephone = 123456789

  以上看到的是使用Application状态的一般情况。那大家有没有想过其它的情况?比如说当你成功的建立了Application状态以后(test1.aspx),服务器突然断电或者被重新启动了。

  这样问题就来了。如果真的发生了上述的情况,那么我们再运行test2.aspx后就不会看到我们要的结果了。所以为了避免上述的情况发生,我们应该在启动网站的时候,就配置应用程序状态。在此我们就要使用global.asax文件。

//global.asax
<script language="c#" runat="server">
void Application_OnStart()
{
  Application["CompanyTelephone"]="123456789";
}
</script>

  建立如上文件以后,将它放在Web应用程序的根文件夹中。这样一来,当Web应用程序启动的时候,ASP.NET会自己寻找global.asax文件。如果找到了,就再在其中寻找Application_OnStart()函数。如果这个函数存在,则运行其中的代码。

  好了,这样一来,即使我们没有运行test1.aspx,test2.aspx还是会得到我们所要的结果的!

 

本文参考了WROX出版的“ASP.NET 1.0入门经典——C#编程篇”


[C语言系列]NET 中C#的switch语句的语法  [系统软件]托拽Explore中的文件到VB.net的窗口
[系统软件]Boost库在XP+Visual C++.net中的安装  [常用软件]新配色面板:Paint.Net3.0RC1官方下载
[常用软件]用内建的“Net Meeting”聊天  [VB.NET程序]Henry的VB.NET之旅(三)—共享成员
[VB.NET程序]Henry的VB.NET之旅(二)—构造与析构  [VB.NET程序]Henry的VB.NET之旅(一)—失踪的窗体
[VB.NET程序]在托盘上显示Balloon Tooltip(VB.NET)  [VB.NET程序]Henry手记-VB.NET中动态加载Treeview节点(二)
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Web开发  · 网页制作
    · 平面设计  · 网站运营
    · 网站推广  · 搜索优化
    · 建站心得  · 站长故事
    · 互联动态
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台