ASP.NET网页编程之asp.net下Cache 缓存操纵类代码
因为二次编译器太复杂,那么建议只是在安装程序的时候编译一次,而不类似java那样运行就编译。并且我觉得,一次痛苦,总比多次低效率要舒服多了。复制代码代码以下:usingSystem.Collections.Generic;
usingSystem.Web;
usingSystem;
namespaceDataAccess
{
///<summary>
///缓存把持类
///</summary>
publicclassCacheControl
{
publicstaticList<string>AllUseCacheKey=newList<string>();
///<summary>
///增加缓存
///</summary>
///<paramname="key"></param>
///<paramname="value"></param>
///<paramname="absoluteExpiration"></param>
publicstaticvoidAddCache(stringkey,objectvalue,DateTimeabsoluteExpiration)
{
if(!AllUseCacheKey.Contains(key))
{
AllUseCacheKey.Add(key);
}
HttpContext.Current.Cache.Add(key,value,null,absoluteExpiration,TimeSpan.Zero,System.Web.Caching.CacheItemPriority.Normal,null);
}
///<summary>
///移除缓存
///</summary>
///<paramname="key"></param>
publicstaticvoidRemoveCache(stringkey)
{
if(AllUseCacheKey.Contains(key))
{
AllUseCacheKey.Remove(key);
}
HttpContext.Current.Cache.Remove(key);
}
///<summary>
///清空利用的缓存
///</summary>
publicstaticvoidClearCache()
{
foreach(stringvalueinAllUseCacheKey)
{
HttpContext.Current.Cache.Remove(value);
}
AllUseCacheKey.Clear();
}
}
}
C#中有两处地方用到new关键字,第一处也是最常见的一处是用在调用构造函数的时候,这种情况也是大家见的最多的一种。另一处是用在派生类中,作用有隐藏成员,切断继承关系等,相信第二处的用法大家明显要比第一处生疏。 这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。 那么,ASP.Net有哪些改进呢? 逐步缩小出错代码段的范围,最终确定错误代码的位置。 比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变。 那么,ASP.Net有哪些改进呢? 由于CGI程序每响应一个客户就会打开一个新的进程,所以,当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,这样就加重了服务器的负担,使服务器的执行效率变得越来越低下。 是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。 Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(ParentThread)来实现资源共享,这样就减轻了服务器的负担,所以,JavaServlet可以用来做大规模的应用服务。
页:
[1]