原作者:Sreedhar Koganti,翻译:NetFire(Fire.Rolland.Han)
翻译得到了原作者许可。
原文:http://www.w3coder.com/alphatalks/aspnet20.aspx
注:本文已经发表到“程序春秋”杂志2003年12期。现转发CSDN,版权属于NetFire本人、杂志社和CSDN,如需转载请联系本人或杂志社
开篇语:
在这篇文章中,我将向大家介绍一下WINDBEY的一些有趣的新特性。哦?是Whidbey?别搞混了,Whidbey就是V2的内部开发代号。(下文中V1表示ASP.NET 1.0,V2表示ASP.NET 2.0)
正文:
好吧,让我们来讲讲V2;V2是MICROSOFT.NET的下一代应用程序开发平台的“起始点”。据说它也是Yukon的一部分。别着急,MICROSOFT将会在即将的PDC大会上向您揭开V2 ALPHA的面纱。好了,让我们言归正传。(PDC——Microsoft Professional Developers Conference,简称为PDC;Yukon——微软下一代的SQL Server的内部开发代号)
在V2中有以下一些有趣的新特征:
a) 和v1相比,在v2中代码行减少了70%,这是不是很让人兴奋?
b) 新的VS.NET(Whidbey)将会带给使用者友好的、让人兴奋得新特性,这会让开发人员的编程生活变得非常容易。
另外,在新版本的VS.NET中,有以下一些新特性。
1. 无项目的项目系统“Project-less”
如果你是从ASP转过来的开发人员,你将会为这个前景感到非常兴奋的。
2. Web站点将支持FileSystem,IIS,FTP和FPSE(Frontpage服务器扩展包)。
3. 同时支持代码分离和页面嵌入服务器端代码两种模式。
4. 完全的功能更强的智能语法和调试支持。
5. Html代码保存;
微软官方说这次它肯定有作用。所以对于ms阵营的开发者来说,这绝对是个好消息。
6. 支持真正的XHTML标准,以及动态插件的引擎;
7. 更加全面的支持数据库的设计;
8. 在ASP.NET中增加了40多个新的控件。我相信他们将会给开发人员的工作带来极大的方便。
下面分类介绍这些控件:
Login/Security Controls:
这里面有5个控件,他们非别是——
a) Login
b) LoginView
c) PasswordRecovery
d) LoginStatus
e) LoginName
这些都是使用起来非常方便的控件,并且这些控件将会让开发登陆安全系统的应用程序变得非常简单。
(图一:Whidbey的工具箱Security控件截图)
Data/DataSource控件:
下面是ASP.NET 2.0中新的Data Source控件:
1. <asp:SqlDatasource>
2. <asp:AccessDatasource>
3. <asp:XmlDatasource>
4. <asp:SitemapDatasource>
5. <asp:ObjectDatasource>
6. <asp:DataSetDatasource>
下面是ASP.NET 2.0中新的Data Bound 控件:
1. <asp:gridview>
2. <asp:detailsview>
3. <asp:treeview>
4. <asp:menu> (Beta timeframe)
(图二:Whidbey的工具箱Data控件截图)
Personalization:
在ASP.NET的Personalization控件中,信息是以一种固定的格式存储,并且和特定的用户相关联。ASP.NET的Personalization控件使得我们可用简单的方法来管理用户的信息,而不必非要去使用数据库(这就免去了创建和维护数据库的劳累工作)。另外,Personalization系统为我们处理用户信息相关的这类问题时提供了一组规范、易用、强大的API,使得我们的应用程序能够随时随地的使用。
下面是一些私有化控件的名字:
a) WebPartManager
b) WebPartZone
c) ContentWebPart
d) CatalogZone
e) PageCatalogPArt
f) EditorZone
g) TemplateCatalogPart
h) AppearanceEditorPart
i) LayoutEditorPart
(图三:Whidbey的工具箱Data控件截图)
Navigation:
这个Navigation控件帮助我们方便的在ASP.NET站点中创建导航。在一个站点中,我们可以用站点题图描述这个站点的逻辑结构。当然,我们可以简单的修改站点地图来管理页面的导航,也可以为了管理页面导航做很多修改。
(图四:Whidbey的工具箱Navigation控件截图)
下面是另外一些新的控件(至于这些控件的名字,大家可以猜一下):
1) Wizard
2) Image Generation
3) Multi-View
4) ImageMap
5) Mobile controls 等等
Master Pages:
这个特性对许多站点都是有用的。借助master pages, 我们可在程序中进行一致的页面布局。在我们的应用程序中, master page为所有的页面定制了一个通用的外观和标准行为。之后,我们可使用该Master Pages创建单独的页面实例,这些页面自然将包含以上这些通用特性。你能够在Wilson 的Blog —Master Pages details at paul Wilson blog中找到与此有关的内容。网址是—http://weblogs.asp.net/pwilson/posts/33273.aspx
Web Admin Tool:
在ASP.NET 2.0中,这是我最喜欢的一个新特性之一。这个工具将帮助我们配置web.config文件中的信息。所以,当在一个产品的应用中,不需要打开web.config文件来修改配置。就像IIS的虚拟目录配置一样,无论在什么时候在需要时,只要用这个工具修改一些属性就可以了。比如需要修改web.config文件中的数据库联接串的时候。在IIS站点属性中,你就可以找到名为ASP.NET的选项卡,它将帮助我们配置和管理web.config文件。下图是在IIS站点属性中的ASP.NET选项卡下的web admin tool。
(图五:IIS中Web Admin Tool截图)
(点击“ Edit Configuration”按钮后, 所显示的内容截图)
Cross Page Posting:
这是ASP.NET 2.0中我喜欢的另一个新特性。以前,在页面之间传递数据是一件很痛苦的事情。但现在在ASP.NET 2.0中,这变得非常简单容易。
页面现在可以提交到另外一页,同时最初的服务器控件可被访问。这是不是让您耳目一新?
怎么完成呢?完成它只需要非常简单的两个操作步骤,他们是:
1. 设置“PageTargetUrl”属性,在按钮和服务器控件中,它将引发页面之间的提交;
2. 在目标页中的相关控件的原使页面中使用“PreviousPage”属性。
好了,现在就可以控制前页的控件传送的数据了!
客户端脚本:
现在我们可以说说新增的客户端脚本支持,它们分别是:
a) Focus
b) Scrolling
c) Client Events
d) Out of band call backs to server
现在我们同样可以从新闻组中获得相关的支持。我认为这也是ASP.NET 2.0很不错的新特征。
总结:
上面我们非常简要的讨论了所涉及的新特征,这里没有提及象Mobility, Health Monitoring/Operations, Hosting,Copy Web in Visual Studio等新的特征。不要认为ASP.NET 2.0只有以上这些新特征。在文章中,我只是简要的介绍了一些相对来说重要的新特征,这里说到的只是冰山一角。现在ASP.NET 2.0仅仅是在测试阶段,也许正式发布的时候还有更多的新东西等着我们,让我们拭目以待吧!