艾伟_转载:VS 2010 和 .NET 4.0 系列之《干净的Web.Config文件 》篇

简介: 本系列文章导航VS 2010 和 .NET 4.0 系列之《ASP.NET 4 中的SEO改进 》篇VS 2010 和 .NET 4.0 系列之《干净的Web.Config文件 》篇VS 2010 和 .

本系列文章导航

VS 2010 和 .NET 4.0 系列之《ASP.NET 4 中的SEO改进 》篇

VS 2010 和 .NET 4.0 系列之《干净的Web.Config文件 》篇

VS 2010 和 .NET 4.0 系列之《起始项目模板》篇

VS 2010 和 .NET 4.0 系列之《多定向支持》篇

VS 2010 和 .NET 4.0 系列之《多显示器支持》篇

VS 2010 和 .NET 4.0 系列之《代码优化的Web开发Profile》篇

VS 2010 和 .NET 4.0 系列之《ASP.NET, HTML, JavaScript 代码片段支持》篇

VS 2010 和 .NET 4.0 系列之《自动启动ASP.NET应用》篇

VS 2010 和 .NET 4.0 系列之《在ASP.NET 4 Web Forms中实现URL导向》篇

VS 2010 和 .NET 4.0 系列之《在VS 2010中查询和导航代码》篇

VS 2010 和 .NET 4.0 系列之《VS 2010代码智能提示的改进》篇

VS 2010 和 .NET 4.0 系列之《添加引用对话框的改进》篇

VS 2010 和 .NET 4.0 系列之《内置图表控件》篇

  这是我针对即将发布的VS 2010 和 .NET 4所撰写的贴子系列的第一篇。

  无可否认,今天的贴子所涉及的东西在ASP.NET 4.0中是个非常小的(但我还是认为是个非常棒的)变动:干净,简洁的web.config文件。

  第一次在Visual Studio 2010中使用 文件->新项目 创建空白的ASP.NET 4.0 Web应用时你就会看到这个改进,所以我觉得把这个东西做为我的系列的第一篇是非常恰当的。

  .NET 3.0 和 3.5中的Web.config文件

  在最近几个版本中,新ASP.NET项目中的web.config文件的大小一直在稳步增长。例如,Visual Studio 2008 SP1中加到新的web项目中的默认web.config文件已有126行,所含的东西包罗万象,从标识的定义到用于ASP.NET HTTP管道中的处理器和模块的定义等等。

  这个文件大小的增加是因为.NET 3.0 和 .NET 3.5用的是跟.NET 2.0一样的CLR和machine.config配置文件,只不过是在安装时加了或更新了框架中的程序集而已。为避免意外地覆盖机器上原有的2.0 machine.config中定制设置的风险,我们没有在其中注册随.NET 3.0 和 .NET 3.5版本而来的新的ASP.NET功能带来的标识定义和处理器和模块,而是选择让新的项目在应用的局部web.config中注册这些设置。这个做法比较安全,但也导致了web.config文件大小的增加,而且变到愈加复杂,读起来也更困难。

  .NET 4中的Web.config文件

  .NET 4 包括了一个新的CLR版本,以及特定于.NET 4的新的machine.config文件(是与.NET 2, .NET 3 和 .NET 3.5中所用的machine.config文件并列安装的)。

  新的.NET 4 machine.config文件现在自动注册我们几年来添加的所有的ASP.NET 标识部分(section), 处理器和模块,包括了对应于下列功能的设置:

  • ASP.NET AJAX
  • ASP.NET 动态数据
  • ASP.NET 路径选择或导向(现在可为ASP.NET WebForms和ASP.NET MVC两者兼用)
  • ASP.NET 图表控件(现在内置于ASP.NET V4中了)

  这意味着,在VS 2010中创建新的空白ASP.NET应用项目时,你会发现新的应用级默认web.config文件既干净又简洁:

  上面的第一个配置部分告诉ASP.NET默认允许应用调试,并向Visual Studio指定在提供intellisense时该定向的.NET版本(VS 2010支持多定向,IDE中的intellisense会根据你当前针对的框架版本自动改变)。

  第二个配置部分表示在IIS7中运行ASP.NET应用时是否使用“integrated(集成)”模式,该模式控制了是否对应用中的所有请求或者只是针对特定于ASP.NET的URL才运行ASP.NET HttpModules模块。我们在新应用的应用级web.config文件默认启用这个模式,因为,为兼容的原因,注册在机器级的默认IIS7设置是只对特定于ASP.NET的URL才运行模块,并不是对所有的请求。

  结束语

  .NET 4中简化了的web.config文件,其变动貌似细小,但我还是认为非常之棒,在你创建新的ASP.NET应用时将使得其默认体验更加干净,也更为容易理解。

  在以后的贴子里,我将深入探讨ASP.NET 4中许多更加实质性的改进(以及若干个“细小但很棒”的调整)。

  希望本文对你有所帮助,

  Scott

目录
相关文章
|
27天前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
86 3
|
3月前
|
编解码 前端开发 JavaScript
.NET_web前端框架_layui_栅格布局
【8月更文挑战第27天】
46 4
|
2月前
|
开发框架 监控 前端开发
在 ASP.NET Core Web API 中使用操作筛选器统一处理通用操作
【9月更文挑战第27天】操作筛选器是ASP.NET Core MVC和Web API中的一种过滤器,可在操作方法执行前后运行代码,适用于日志记录、性能监控和验证等场景。通过实现`IActionFilter`接口的`OnActionExecuting`和`OnActionExecuted`方法,可以统一处理日志、验证及异常。创建并注册自定义筛选器类,能提升代码的可维护性和复用性。
|
2月前
|
开发框架 .NET 中间件
ASP.NET Core Web 开发浅谈
本文介绍ASP.NET Core,一个轻量级、开源的跨平台框架,专为构建高性能Web应用设计。通过简单步骤,你将学会创建首个Web应用。文章还深入探讨了路由配置、依赖注入及安全性配置等常见问题,并提供了实用示例代码以助于理解与避免错误,帮助开发者更好地掌握ASP.NET Core的核心概念。
89 3
|
2月前
|
开发框架 前端开发 .NET
VB.NET中如何利用ASP.NET进行Web开发
在VB.NET中利用ASP.NET进行Web开发是一个常见的做法,特别是在需要构建动态、交互式Web应用程序时。ASP.NET是一个由微软开发的开源Web应用程序框架,它允许开发者使用多种编程语言(包括VB.NET)来创建Web应用程序。
55 5
|
27天前
|
C# Windows
一款基于.NET开发的简易高效的文件转换器
一款基于.NET开发的简易高效的文件转换器
|
2月前
.NET 压缩/解压文件
【9月更文挑战第5天】在 .NET 中,可利用 `System.IO.Compression` 命名空间进行文件的压缩与解压。首先引入相关命名空间,然后通过 GZipStream 类实现具体的压缩或解压功能。下面提供了压缩与解压文件的方法示例及调用方式,便于用户快速上手操作。
|
3月前
|
开发框架 监控 .NET
开发者的革新利器:ASP.NET Core实战指南,构建未来Web应用的高效之道
【8月更文挑战第28天】本文探讨了如何利用ASP.NET Core构建高效、可扩展的Web应用。ASP.NET Core是一个开源、跨平台的框架,具有依赖注入、配置管理等特性。文章详细介绍了项目结构规划、依赖注入配置、中间件使用及性能优化方法,并讨论了安全性、可扩展性以及容器化的重要性。通过这些技术要点,开发者能够快速构建出符合现代Web应用需求的应用程序。
53 0
|
3月前
|
开发框架 .NET Linux
【Azure Developer】已发布好的.NET Core项目文件如何打包为Docker镜像文件
【Azure Developer】已发布好的.NET Core项目文件如何打包为Docker镜像文件
|
2月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
38 7
下一篇
无影云桌面