当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > .NET 4.0改进的介绍

ASP.NET
asp.net下用服务器端代码解决浏览器兼容性问题
asp.net 安全的截取指定长度的html或者ubb字符串
asp.net 在线编辑word文档 可保存到服务器
asp.net 提高网站速度及如何利用缓存
asp.net 修改/删除站内目录操作后Session丢失问题
asp.net URL重写简化版 速学URL重写
asp.net EncryptHelper 加密帮助类
asp.net JSONHelper JSON帮助类
C# 调用存储过程简单完整的实例代码
vs2008 安装失败的总结与分享
HttpHandler HttpModule入门篇
ASP.NET(AJAX+JSON)实现对象调用
Asp.net 基于Cookie简易的权限判断
asp.net通过HttpModule自动在Url地址上添加参数
asp.net 字符串、二进制、编码数组转换函数
ASP.NET操作Excel备忘录
记录游客页面访问IP的简易实现代码 (asp.net+txt)
比较简单的将数据信息导入wrod文档方案(C# for word)
增加asp.net应用程序性能的20种方法(简单有效)
ASP.NET 图片防盗链的实现原理分析

ASP.NET 中的 .NET 4.0改进的介绍


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 50 ::
收藏到网摘: n/a

.NET 4.0改进的介绍

核心服务

大部分的新特性都是围绕自定义和扩展来的,原先不能自定义的东西现在可以自定义了,可以自己扩展了,然后把自己的组件在web.config中配置即可应用我们自己的组件。

Web.Config精简

.NET框架4.0中会把大部分配置放到machine.config中,这样在web.config中甚至可以一行代码都不写。

自定义输出缓存策略

输出缓存对于改善性能有很大好处,在ASP.NET 4.0中可以自定义输出缓存的策略,比如把输出保存在磁盘中,外部的memcached服务中等等。甚至还可以定义一些高级规则,比如为A页面使用A输出缓存策略来把数据保存于内存中,为B页面使用B输出缓存策略来把数据保存于磁盘中。

<caching>

<outputCachedefaultProvider="AspNetInternalProvider">

<providers>

<addname="DiskCache"

type="Test.OutputCacheEx.DiskOutputCacheProvider, DiskCacheProvider"/>

</providers>

</outputCache>

</caching>

自启动的应用程序

ASP.NET 4.0和IIS 7.5配合可以设定一个预处理的Provider,这样在应用程序池启动或回收后IIS会自动调用这个Provider中的代码来处理,处理完毕之后才接受请求。

<preloadProviders>

<addname="PrewarmMyCache"

type="MyNamespace.CustomInitialization, MyLibrary" />

</preloadProviders>

永久重定向

如果使用Response.Redirect的话,返回302状态,客户端再发送一次请求到新的地址,在ASP.NET 4.0中提供了RedirectPermanent方法来永久重定向到某个地址。客户端或搜索引擎遇到301状态码会保存这个永久重定向地址,以后会直接访问定向后的地址,节省了一次往返。

压缩会话数据

如果使用进程外Session或SQL Server保存Session的话,会话数据需要进行序列化和反序列化,ASP.NET 4.0提供了使用GZIP压缩会话数据的特性来缩小会话数据流的大小。

<sessionState

mode="SqlServer"

sqlConnectionString="data source=dbserver;Initial Catalog=aspnetstate"

allowCustomSqlDatabase="true"

compressionEnabled="true"

/>

URL规则

在ASP.NET 4.0中可以自定义访问路径以及QueryString的长度,并且还可以设定路径中无效的字符,而在以前这些都不是可以定制的。

<httpRuntime requestPathInvalidChars="&lt;,&gt;,*,%,&amp;,:,\" maxRequestPathLength="260" maxQueryStringLength="2048"/>

自定义RequestVaidation

RequestValidateion虽然可以有效防止XSS注入等,但在以前验证规则是不可以自定义的,很多时候我们觉得这个规则太严格了只能关闭这个功能。在ASP.NET 4.0中可以自定义类来实现自己的验证规则。

<httpRuntime requestValidationType="Samples.MyValidator, Samples" />


对象缓存

System.Web.Caching.Cache大家很熟悉,甚至有的时候编写Windows和Windows服务程序的时候也会引用System.Web.dll来使用这个Cache功能。在4.0中这个功能在System.Runtime.Caching.dll中会有新的实现,并且也会更强大。

自定义Encoding

URL Encoding/HTML Encoding都是很常用的功能,在ASP.NET 4.0中我们可以继承System.Web.Util.HttpEncoder来自定义编码规则。

<httpRuntime encoderType="Samples.MyCustomEncoder, Samples"/>

AppDomain级别的性能检测

如果在一个进程中运行多个网站的话我们可能希望能监视到每一个网站的性能,在ASP.NET 4.0中我们可以开启AppDomain级别的性能检测。

<?xml version="1.0" encoding="UTF-8" ?>

<configuration>

<runtime>

<appDomainResourceMonitoring enabled="true"/>

</runtime>

</configuration>

文章来源:DIY部落

原文地址:http://bbs.diybl.com/18/20090820/5062.html