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

ASP.NET
FreeTextBox(版本3.1.6)在ASP.Net 2.0中使用方法
.NET 常用功能和代码小结
在 .NET Framework 2.0 中未处理的异常导致基于 ASP.NET 的应用程序意外退出
asp.net IList查询数据后格式化数据再绑定控件
asp.net sql存储过程
asp.net 简单实现禁用或启用页面中的某一类型的控件
asp.net(c#)获取内容第一张图片地址的函数
The remote procedure call failed and did not execute的解决办法
ASP.NET 在线文件管理
asp.net 读取并修改config文件实现代码
ASP.NET Cookie 操作实现
asp.net Silverlight中的模式窗体
Silverlight中动态获取Web Service地址
asp.net Silverlight应用程序中获取载体aspx页面参数
asp.net 水晶报表隔行换色实现方法
asp.net 获取Gridview隐藏列的值
手动把asp.net的类生成dll文件的方法
asp.net 使用ObjectDataSource控件在ASP.NET中实现Ajax真分页
动态指定任意类型的ObjectDataSource对象的查询参数
asp.net Md5的用法小结

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 83 ::
收藏到网摘: 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