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

ASP.NET
赫赫大名的A*寻路算法(vb.net版本)
asp.net(c#)下Jmai去说明 使用与下载
[原创]完美解决Could not load file or assembly ''AjaxPro.2'' or one of its dependencies. 拒绝访问。
asp.net下gridview 批量删除的实现方法
用CSS实现图片倾斜 只支持IE
.net get set用法小结
vs 不显示行号的操作方法
ASP.NET页面进行GZIP压缩优化的几款压缩模块的使用简介及应用测试!(附源码)
ASP.Net不执行问题一解
asp.net 无限分类
让VS2008对JQuery语法的智能感知更完美一点
扩展方法ToJSON() and ParseJSON()
asp.net下PageMethods使用技巧
Linq to SQL Delete时遇到问题的解决方法
实现ASP.NET多文件上传程序代码
ASP.NET AJAX 1.0 RC开发10分钟图解
asp.net get set用法
ASP.NET下使用WScript.Shell执行命令
asp.net2.0实现邮件发送(测试成功)
Asp.net 无限级分类实例代码

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


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