1 第1章
VS 2008 IDE
集成开发环境新功能介绍
本章内容
1.1 ASP.NET 3.5技术蓝图概述
1.2 ASP.NET 3.5技术脉络
1.3 VS 2008开发工具版本介绍
1.4 VS 2008与VS 2005环境的共存
1.5 VS 2008性能改进
1.6 .NET Framework Multi-Targeting
1.7 HTML设计画面的拆分视图
1.8 CSS样式生成与管理工具
1.9 JavaScript IntelliSense支持
1.10 JavaScript Debug支持
1.11 LINQ与O/R Mapping设计工具的支持
1.12 组合管理C# 的using语句
1.13 嵌套Master Pages的支持
1.14 透明的IntelliSense模式
1.15 标尺及网格线对WebForm窗体的设计辅助
1.16 VS 2008重要Hot-Fix补丁程序
1.17 各章示例文件名称列表
第1章 VS 2008 IDE集成开发环境新功能介绍
2
本章将对ASP.NET 3.5及VS 2008进行技术总体说明,阐述ASP.NET 3.5技术脉络及定义,同时也对VS 2008开发工具的新功能做概括性介绍,讨论VS 2008如何能对ASP.NET 3.5进行更佳的辅助,让各位在最短的时间内,掌握ASP.NET 3.5与VS 2008的学习方向与精髓。1.1 ASP.NET 3.5技术蓝图概述
若要用一张图简单诠释ASP.NET 3.5技术,则图1-1是祭司所描绘出的技术堆栈(Stack)。在这张图中,各位可以清楚地看到,ASP.NET 3.5绝大多数的技术堆栈模块都沿用ASP.NET 2.0,再加入新一代的元素,包括了:C# 3.0、VB 9、LINQ、ASP.NET AJAX 3.5内建、Silverlight 1.0 & 2.0 RIA支持,但新的部分“看起来”似乎不算多。
图1-1 ASP.NET 3.5技术堆栈架构图
乍看之下,ASP.NET 3.5似乎没推出太多的新东西,以ASP.NET书籍来看也不需要改写太多,就程序设计师而言,似乎只需坚守ASP.NET 2.0就够了,因为LINQ及C# 3.0(VB 9)不一定要用到,学不学新东西也无所谓。某种程度上,祭司同意这样的看法,但对于积极的、想要了解ASP.NET 3.5新技术的读者,祭司就要想尽办法替各位把新功能挖掘出来,让各位能够领略到所谓的别有洞天。
1.1 ASP.NET 3.5技术蓝图概述 3 .NET相关技术版本演进
ASP.NET本身已历经4代的版本演进,ASP.NET 3.5正是第4代的技术,然而聪明的程序设计师,在看ASP.NET技术演进时,绝不会单独看ASP.NET这个模块,还会一并查看Visual Studio开发工具、.NET Framework版本、CLR引擎、数据存取技术等,这样才能对新一代技术有个概括性的综览,表1-1中祭司整理了目前所有的相关软件版本,然后进一步讨论其中技术变化的内涵。
表1-1 .NET相关软件版本演进表
2002年2003年2005年2006~2007年2008年
IDE工具VS.NET
2002 VS.NET
2003
VS 2005 VS 2005 SP1 VS 2008
语言C# 1.0
(VB 7)
C# 1.0
(VB 7)
C# 2.0
(VB 8)
C# 3.0(VB 9)
.NET
Framework
1.0 1.1
2.0
3.0 3.5 CLR Engine 1.0 1.1 2.0 2.0 2.0
ASP.NET 1.0 1.1 2.0 y ASP.NET
AJAX 1.0
y Silverlight 1.0
y ASP.NET AJAX 3.5
y Silverlight 2.0
数据访问技术ADO.NET
1.0
ADO.NET
1.1
ADO.NET 2.0
y ADO.NET 2.0
y LINQ
y ADO.NET Entity
Framework
以下祭司进行一些现象的提示与讨论:
1.ASP.NET版本从
2.0之后就是
3.5版本,中间并没有所谓的ASP.NET 3.0。
2.一直以来ASP.NET、Visual Studio及.NET Framework 三者的版本一直保持着同步的
状态,每一代新产品都会推出相同的软件版本编号;然而这种状况在.NET Framework
3.0的4项新技术出现后(WPF、WCF、WF、CardSpace)改变了,它们不等新版本
的Visual Studio推出,就径自发表,以致3个软件之间的版本自此分道扬镳而没有同步绑定在一起。
3.3个软件之间的版本分开,有其好处与缺点,好处是软件的进化可以各自独立,大家
不必等待漫长的2~3年再一起推出,如此可以因应现实世界的需求,视需要随时推出新技术;而同时其缺点也是易见的,因为软件版本各自发展,以致彼此集成度不好,
第1章 VS 2008 IDE集成开发环境新功能介绍
4
例如.Net Framework 3.0刚推出时,有很多人对WPF、WCF、WF、CardSpace感兴趣,
但真的投入时间去研究时才发现缺少完整的可视化工具或工具辅助,开发起来不但费
力,且技术示例也不够完整。
4.ASP.NET 3.5虽然版本为3.5,但是并不表示它执行起来是全新的,因为它仍沿用CLR
2.0的运行引擎。这种现象并不只有在软件上才会发生,现实世界许多厂家的新车,有
时只改造了汽车的外壳,让车子感觉比较美观,但引擎仍然与前一代的无异,或者只
有小小的微调。
5.ASP.NET 3.5使用旧的CLR 2.0运行引擎,是好还是坏呢?往好的方面想,就是您旧
的ASP.NET 2.0程序可以不需修改就能在ASP.NET 3.5项目中执行。坏处呢?一如您
买新车一样,你可能永远不会将油门踩到底,以时速200公里速度前进,但您就是希
望新车能搭配比旧引擎还要优异的新引擎,让您在起步或加速时可以得到更佳的速度
感(或是虚荣心),这也是很多人在乎的,故没有CLR 3.5(或3.0)新引擎,或许有
的程序设计师心中会有一些小小的失落。
6.由于没有CLR 3.5(或3.0)新引擎,因此ASP.NET 3.5程序代码若和ASP.NET 2.0相
同,运行起来并不会凭空加速,因为它们都使用CLR 2.0(但还是有一些例外情形)。
7.ADO.NET目前最新版本仍为ADO.NET 2.0(可在工具箱项目中查看,如图1-2所示),
并没有所谓的ADO.NET 3.0或3.5,如果有的话,将来在2008年底推出的ADO.NET
Entity Framework才算是下一代的ADO.NET。
图1-2 ADO.NET 2.0组件版本
8.以往ASP.NET AJAX 1.0项目,VS 2005都是需要另外安装模板(Template)才会出现
说明哪些网站属于asp1.1 ASP.NET 3.5技术蓝图概述 5
相关的开发环境,VS 2008则将这部分直接内建,成为ASP.NET AJAX 3.5,如图1-3
所示。而Silverlight除了支持原有的1.0正式版,目前还推出了Silverlight 2.0 RC,将
来2.0正式版的项目模板也只能安装在VS 2008之上。
图1-3 ASP.NET AJAX 3.5版本号码
示例1-1 查看CLR引擎版本号
CLR是所有.NET程序的运行引擎与环境,虽然.NET程序执行时一定会用到它,但我们显然与它少有深入的接触及互动。举个最简单的例子,各位现在计算机中可能存在数个.NET Framework环境,也因此会有数个CLR版本编号,那我们要如何知道ASP.NET 3.5项目究竟使用哪个CLR版本号,如何真实地确认呢?请参考CLRVersion.aspx程序:
01protected void Page_Load(object sender, EventArgs e)
02{
03 //取得CLR的主要,次要,组建,修订号码
04 string CLR1 = System.Environment.Version.ToString();
05 Response.Write(String.Format("您的CLR版本是{0}<BR/><BR/>", CLR1));
06 string CLR2 = System.Runtime.InteropServices.
RuntimeEnvironment.GetSystemVersion();
07 Response.Write(String.Format("您的CLR版本是{0}<BR/>", CLR2));
08}
程序说明:
以上列出了两种查看ASP.NET项目运行时的CLR版本编号的方法,第一种方法可以看到最详细的编号:2.0.50727.1434,第二种可以看到编写的主要部分:v2.0.50727。而当您用VS 2005
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论