ASP.NET的状态管理
为什么要状态管理
B/S与C/S两种架构的有着完全不同的运行机制。C/S基本上所有的软件功能都在客户端(Client)中实现(所以C/S也称为胖客户端架构),服务器端(Server)只提供基础服务,最为典型的是数据库服务提供数据服务。而B/S架构主要的功能在服务端(Server)实现,客户端的浏览器(Browser)只接受用户输入和数据展现。C/S架构的功能都在客户端的一个进程中完成,客户端与服务器端的连接基本上保持同步,只需要记录两者的连接状态而不存在其他的状态要管理。
而在B/S架构中,客户端和服务之间的连接并不保持同步。我们来看看B/S架构客户端与服务器端的交互方式。客户端浏览器每次将网页发送到服务器时,服务器都会创建网页类的一个新的实例。在传统的Web编程中(指那些没有提供内置的状态管理机制的B/S开发平台),这通常意味着在每一次往返过程中,与该页及该页上的控件相关联的信息都会丢失。如用户将信息输入到页面的文本框中,该信息从浏览器传到服务器的往返过程中将丢失,所以状态管理机制成为B/S架构的一个重点。如果我们要深入学习B/S结构,研究其状态管理机制成为必经之路而无法逾越,本文就来探讨当前市场最为流行的B/S架构——ASP.NET框架的状态管理机制。
什么是ASP.NET的状态管理
那么什么是B/S架构的状态管理呢?说白了就是存储页面请求期间的信息,比如购物网站的客户信息或购物车的内容等等。为了解决传统Web编程的固有限制,减少Web开发者的工作量和工作难度,提高开发效率,ASP.NET平台提供了一系列状态选项,使开发者可以按页保留数据和在整个Web应用程序范围内保留数据。
我们也知道在大型的网络应用中,同一个网站可能部署到多台服务器上,针对这种情况,ASP.NET也提供了分布式状态管理功能,使我们能够管理运行在数台服务器上的同一个Web应用程序的多个实例的状态信息。
在Web应用的运行过程中,ASP.NET可以保存和管理Web应用级别(Application)、会话级别(Session)、页面级别(Page)、用户特定和开发人员自定义的信息。具体的来说,ASP.NET提供了如下状态管理选项:
1. 视图状态
2. 控件状态
3. 隐藏域
4. Cookie
5. &nb
相关文档:
ASP.NET打开新窗口方法一:
Response.Write(" <script language=\"javascript\">window.open('aaa.aspx','新窗口,\"toolbar=yes,location=no,directories=yes,status=yes,menubar=yes,resizable=yes,scrollbars=yes\"); </script>");
这种方式代码每次是生成在页面最顶端
ASP.NET打开新窗口方法二:
stri ......
try
{
string _conStr = "Driver={MySQL ODBC 3.51
Driver};server=localhost;database=test;uid=test;password=1;option=3";
& ......
ASP.NET实现自适应图片大小的弹出窗口
在最近的项目中,遇到一个问题,要实现这样的效果:
点pic_small.Aspx页面的缩略图后弹出pic_all.aspx页面,pic_all.aspx页面的大小要根据图片大小自动调整,而且要有图片的说明信息,还可以点上一幅和下一幅等进行翻页。
实现过程如下:
pic_small.Aspx页面缩略图处的代码为: ......
ASP.net 仿QQ弹出窗口
〔转〕http://hi.baidu.com/liyukun8203/blog/item/d9244dfcdb78e388b901a019.html
最近在做内部管理,需要用到这个东西来提醒,所以就把它做成一个类,直接调用,满方便的.贴一下代码,大家看一下
Code
1 using System;
2 using System.Web;
3 using System.Collections.Generic;
4 using Sy ......