asp.net中application,session,cookie,viewstate
asp.net中application,session,cookie,viewstate,cache对象
在asp.net中内置对象如application,session,cookie,viewstate,cache等的生存周期和应用范围从大到小为application,cache,session,cookie,viewstate.
application和cache的应用范围都是在整个应用程序中.而session,cookie,viewstate则是基于每个用户,application的生存周期是整个应用程序的生命期,cache的生存周期是根据需要设定,按实际情况而定,而session的生存周期是用户活动时间加上默认超时时间.cookie的生存周期也是根据需要而定.viewstate生存周期是一个web页面的生命期,即相当于在一个页面内的全局变量.而session相当于整个应用的全局变量(当然只针对这个用户).
下面是详细的关于这些对象用法的描述.
1.Application:用于保存所有用户共用的数据信息。 在Asp.Net中类似的配置数据最好保存在Web.config文件中。如果使用Application对象,一个需要考虑的问题是任何写操作都要在 Application_OnStart事件(global.asax)中完成。尽管使用Application.Lock和 Application.Unlock方法来避免写操作的同步,但是它串行化了Application对象的请求,当网站访问量大的时候会产生严重的性能 瓶颈。因此最好不要用此对象保存大的数据集。
使用如下:
//存放信息
Application["UserNameID"]="1000";
//读取信息
String NameID=Application["UserNameID"].ToString();
2.Session:用于保存每个用户的专用信息。Session中的信息保存在Web服务器的内存中,保存的数据量可大可小。当Session超时或被关闭时将自动释放保存的数据信息。对于小量的数据Session对象保存还是一个不错的选择。
细节,两种浏览器不能同时存入session。没有任何关联存在键值对
每一个session有一个默认ID 在服务器上,借用cookies关联
使用如下:
//存放信息
Session["UserNameID"]="1000";
//读取信息
String NameID=Session["UserNameID"].ToString();
3.Cookie: 用于保存客户浏览器请求服务器页面的请求信息,其有效期可以人为设置,而且其存储的数据量很受限制,因此不要保存数据集及其他大量数据。而且Cookie以明文方式将数据信息保存在客户端的计算机中,因此最好不要保存敏感的未加密的数据。
使用如下:
//存放信息
Response.Cookie["UserNameID"].Value="1000";
//读取信息
String NameID=Response.Cookie["UserNameID"].Value;
4.ViewState: 常用
相关文档:
一,如果直接把asp.net mvc2 RC 部署在iis5.1上,会出现无法显示页面的情况,原因可能是路径映射没有起作用。
解决办法:
1.在 routes.MapRoute(
"Default", ......
一、ASP.NET Web Service代码
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data.SqlClient;
namespace WebService1
{
/// <sum ......
using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.ComponentModel;
namespace SQLHelper
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
public class SQLHelper
{
// 连接数据源
......
在asp.net里使用com组件导出excel后总是会有一个EXCEL.EXE进程存在,占据着30多M的内存,研究了好久试了网上的很多办法都没有解决。今天心情比较放松,接着从网上搜了一下,看到一篇帖子如下:
在DOT NET中调用Excel后,Excel进程的并未终止问题的解决办法 收藏
在DOT NET中调用Excel后,Excel进程的并未终止问题 ......