艾伟_转载: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

目录
相关文章
|
2月前
|
C++ Windows
.NET Framework安装不成功,下载`NET Framework 3.5`文件,Microsoft Visual C++
.NET Framework常见问题及解决方案汇总,涵盖缺失组件、安装失败、错误代码等,提供多种修复方法,包括全能王DLL修复工具、微软官方运行库及命令行安装等,适用于Windows系统,解决应用程序无法运行问题。
160 3
|
5月前
|
中间件 Go
Golang | Gin:net/http与Gin启动web服务的简单比较
总的来说,`net/http`和 `Gin`都是优秀的库,它们各有优缺点。你应该根据你的需求和经验来选择最适合你的工具。希望这个比较可以帮助你做出决策。
195 35
|
9月前
|
开发框架 前端开发 JavaScript
ASP.NET Web Pages - 教程
ASP.NET Web Pages 是一种用于创建动态网页的开发模式,采用HTML、CSS、JavaScript 和服务器脚本。本教程聚焦于Web Pages,介绍如何使用Razor语法结合服务器端代码与前端技术,以及利用WebMatrix工具进行开发。适合初学者入门ASP.NET。
|
3月前
|
存储 缓存
.NET 6中Startup.cs文件注入本地缓存策略与服务生命周期管理实践:AddTransient, AddScoped, AddSingleton。
记住,选择正确的服务生命周期并妥善管理它们是至关重要的,因为它们直接影响你的应用程序的性能和行为。就像一个成功的建筑工地,工具箱如果整理得当,工具选择和使用得当,工地的整体效率将会大大提高。
138 0
|
9月前
|
运维 前端开发 C#
一套以用户体验出发的.NET8 Web开源框架
一套以用户体验出发的.NET8 Web开源框架
241 7
一套以用户体验出发的.NET8 Web开源框架
|
8月前
|
开发框架 数据可视化 .NET
.NET 中管理 Web API 文档的两种方式
.NET 中管理 Web API 文档的两种方式
130 14
|
9月前
|
Linux C# Windows
.NET使用MiniWord高效生成Word文件
.NET使用MiniWord高效生成Word文件
224 12
|
9月前
|
开发框架 .NET PHP
ASP.NET Web Pages - 添加 Razor 代码
ASP.NET Web Pages 使用 Razor 标记添加服务器端代码,支持 C# 和 Visual Basic。Razor 语法简洁易学,类似于 ASP 和 PHP。例如,在网页中加入 `@DateTime.Now` 可以实时显示当前时间。
|
10月前
Visual Studio 快速分析 .NET Dump 文件
【11月更文挑战第10天】.NET Dump 文件是在 .NET 应用程序崩溃或出现问题时生成的,记录了应用程序的状态,包括内存对象、线程栈和模块信息。通过分析这些文件,开发人员可以定位和解决内存泄漏、死锁等问题。在 Visual Studio 中,可以通过调试工具、内存分析工具和符号加载等功能来详细分析 Dump 文件。此外,还可以使用第三方工具如 WinDbg 进行更深入的分析。
511 1
|
9月前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
208 5