ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ASP.NET 2.0的几个新特性

ASP.NET 2.0的几个新特性

原创 Linux操作系统 作者:iDotNetSpace 时间:2008-03-21 10:49:09 0 删除 编辑
ASP.NET 2.0的几个新特性

 

新的开发人员体系结构

ASP.NET 2.0中的一个重要改进是新的体系结构,可以在应用程序中使用它。ASP.NET小组选择ASP.NET 1.0中一些最常见的编程操作,直接内嵌到ASP.NET中,可以节省大量的时间和编码。

1. 成员和角色管理

在早期版本中,如果开发一个入口,该入口要求用户登录应用程序,以获得许可的访问权限,那么总是需要自己创建它。这样创建出来的应用程序就有一些区域,只能由选定的人来访问它。

在ASP.NET 2.0中内置了这个功能。现在可以使用程序清单1-3来验证用户。

程序清单1-3  在代码中验证用户

VB

If (Membership.ValidateUser (Username.Text, Password.Text)) Then

   ' Allow access code here

End If

C#

if (Membership.ValidateUser (Username.Text, Password.Text)) {

   // Allow access code here

}

ASP.NET 2.0中的一系列新API、控件和提供程序允许控制应用程序的用户成员和角色管理。使用这些API,可以轻松地管理用户及其复杂的角色—— 创建、删除和编辑它们。这些功能只要使用API或内置的Web工具Web Site Administration Tool即可实现。

对于用户及其角色的存储,ASP.NET 2.0使用.mdb文件(该文件类型用于新的SQL Server Express Edition,不要与Microsoft Access混淆)来存储所有的用户和角色。但这个数据存储是没有限制的,可以扩展ASP.NET提供的功能,使用任何数据存储建立自己的提供程序。例如,可以轻松地在LDAP或Oracle数据库中建立自己的用户存储。

2. 个性化

入口为其成员提供的一个高级特性是个性化他们的产品,让终端用户可以定制站点的外观和功能。个性化应用程序和存储个性化设置的功能现在完全内置到ASP.NET框架中。

个性化常常围绕一个用户和这个用户承担的角色来进行,所以个性化体系结构可以与成员和角色基础结构紧密联系起来。存储所创建的个性化设置有几种方式。在Microsoft Access和SQL Server中存储这些设置的功能已内置到ASP.NET 2.0中。与成员和角色API的功能一样,可以使用灵活的提供程序模型,改变内置提供程序使用可用数据存储的方式,或者建立自己的定制数据提供程序,来实现全新的数据存储。个性化API也支持一系列数据存储,因此可以使用多个数据存储。

很容易使用这些新API为定制过程创建一个站点,所以这个特性对于所建立的任意应用程序来说都是有价值的。

3. ASP.NET入口框架

在使用ASP.NET 1.0时,开发人员可以进入ASP.NET小组的站点(http://www.asp.net),下载一些Web应用程序演示IBuySpy。这些演示叫做Developer Solution Kits,可以用作目前Internet上许多Web站点的基础。其中一些甚至扩展为开放源代码的框架,例如DotNetNuke。

IBuySpy的优点是,可以把它提供的代码作为基础,建立Web存储或入口。只需以基本代码作为起点,扩展它即可。例如,可以改变代码显示部分的外观和操作方式,或者在其模块体系结构中引入高级功能。Developer Solution Kits相当流行,因为它们使这些类型的操作非常容易实现。图1-4显示了INETA (International .NET Association)网站,它建立在IBuySpy入口框架的基础之上。

像IBuySpy这样的框架非常流行,因此, ASP.NET 2.0提供了内置功能,以使用Web Parts方便地建立入口。可以使用新Portal Framework建立的项目类型非常多。使用Web Parts建立项目的功能,就是允许终端用户根据自己的喜好完全定制入口。图1-5显示了一个使用Web Parts建立的示例应用程序。

图  1-4

图  1-5

4. 站点导航

ASP.NET小组成员认识到,终端用户希望方便地在整个应用程序中导航。以逻辑的方式进行导航的机制有时很难编码。该小组在ASP.NET 2.0中使用一系列基于导航的服务器控件解决了这个问题。

首先,在一个XML文件中为应用程序建立一个站点地图,特定的控件可以在该站点地图中工作。程序清单1-4显示了一个示例站点地图文件:

程序清单1-4  站点地图文件示例

  

     

        

          url="News.aspx?cat=us" />

        

          url="News.aspx?cat=world" />

        

          url="News.aspx?cat=tech" />

        

          url="News.aspx?cat=sport" />

     

     

        url="Finance.aspx">

        

          url="Quotes.aspx" />

        

          url="Markets.aspx">

           

             description="Looking at the U.S. Market" url="MarketsUS.aspx" />

           

             description="The New York Stock Exchange" url="NYSE.aspx" />

         

        

          url="Funds.aspx" />

     

     

       url="Weather.aspx" />

  

有了站点地图之后,就可以把这个文件用作几个新站点导航服务器控件的数据源,如TreeView和SiteMapPath服务器控件。TreeView服务器控件允许在应用程序中放置可扩展的站点导航系统。图1-6显示了TreeView服务器控件的许多外观之一。

图  1-6

SiteMapPath控件可以在应用程序中放置一些导航项,这样终端用户就可以查看应用程序当前采用的路径,并能轻松地导航到树型结构的上一级。图1-7显示了SiteMapPath服务器控件的一个例子。

图  1-7

这些新站点导航功能为编程访问站点布局提供了极大的便利,甚至可以考虑像终端用户这样的角色如何确定显示站点的哪一部分这类事情。

新的编译系统

在ASP.NET 2.0中,代码以一种新方式构建和编译。ASP.NET 1.0中的编译总是一个很困难的过程。在ASP.NET 1.0中,要使用ASP.NET和Visual Studio建立应用程序的后台编码文件,部署它,然后在请求每个页面时,逐个观察.aspx文件是否已编译。如果在ASP.NET 1.0中对后台编码文件进行了修改,这些修改的内容将不能反映到应用程序中,除非重新建立了整个应用程序。也就是说,在重新编译整个应用程序之前,必须再次逐个页面地请求。

ASP.NET 1.0处理类和编译的方式在ASP.NET 2.0中都得到了改进。新编译系统的机制首先从页面在ASP.NET 2.0中的构建方式下手。在ASP.NET 1.0中,可以使用后台编码模型构建页面,也可以把所有的服务器代码放在.aspx页面的

请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    2376
  • 访问量
    5285965