asp.net环境下的静态类以及静态变量
2015-12-22 22:35
645 查看
在ASP.NET环境下,静态类最大的特点就是共享。
大家都知道,静态类是不能实例化的,我们直接使用它的属性与方法。
因此 我们可以做一些比较有意思的事情。比如说预热数据。
网页 P1.aspx 调用 StaticClass.TestAdd(),并在页面上输出 n。
网页 P2.aspx 调用 StaticClass.TestAdd(),并在页面上输出 n。
访问者 V1 从客户端 C1 访问 P1.aspx,此时输出为 1。
访问者 V2 从客户端 C2 访问 P2.aspx,此时输出为 2。
访问者 V1 关闭浏览器,重新打开访问 P1.aspx,此时输出为 3。
只要 StaticClass 没有被重新编译,即使 P1.aspx、P2.aspx 被重新编译,每当调用 StaticClass.Add(),n 都会在前一个次的基础上加 1
也可以这样说,只要IIS没有重启或者网站没有重启,项目没有被重新发布,都是一直保持的。
大家都知道,静态类是不能实例化的,我们直接使用它的属性与方法。
因此 我们可以做一些比较有意思的事情。比如说预热数据。
public static class StaticClass { public static int n = 0; public static void TestAdd() { n++; } }
网页 P1.aspx 调用 StaticClass.TestAdd(),并在页面上输出 n。
网页 P2.aspx 调用 StaticClass.TestAdd(),并在页面上输出 n。
访问者 V1 从客户端 C1 访问 P1.aspx,此时输出为 1。
访问者 V2 从客户端 C2 访问 P2.aspx,此时输出为 2。
访问者 V1 关闭浏览器,重新打开访问 P1.aspx,此时输出为 3。
只要 StaticClass 没有被重新编译,即使 P1.aspx、P2.aspx 被重新编译,每当调用 StaticClass.Add(),n 都会在前一个次的基础上加 1
也可以这样说,只要IIS没有重启或者网站没有重启,项目没有被重新发布,都是一直保持的。
相关文章推荐
- 改jsp、html、asp的网页图标
- Aspose.Words 总结
- [转贴] ASP.NET -- Web Service (.asmx) & JSON
- 小图示优化 - ASP.NET Sprite and Image Optimization (Web Form)
- 检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法
- Page_Load与sender -- PostBack是由哪个 ASP.NET控件引起 ?
- ASP.NET(Web Form)绘制图表 -- Google Chart 三部曲
- Action与func委托的区别有哪些
- ASP.NET MVC开发中常见异常及解决方案
- ASP.NET GridView控件固定表头(适用于IE浏览器,css操作)
- kafkaspout以及kafkabolt的最简实例
- Easyui Tree + Asp.net加载数据
- Asp.net 生成 导出 Excel 下载
- asp、php、asp.net、jsp介绍及优缺点比较
- asp.net mvc情况下使用jqery ajax的方法进行json数据传递
- ASP.NET: Setup a MVC5 website with MySQL, Entity Framework 6 Code-First and VS2013
- casperjs# install
- asp.net前台ListView中判断CheckBox选中状态
- 在ASP.NET Web API中实现CORS(跨域资源共享)
- (转)ASP.NET MVC4 部署错误 Could not load file or assembly