网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

深入ASP.NET 2.0的提供者模型

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/13
全部融为一体)。今天,Andy所创建的概念与实现被广泛应用于ASP.NET论坛和Community Server中,甚至被应用于许多核心ASP.NET 2.0组件中。

  三、 提供者模型优点

  提供者模型提供许多优点。首先,在代码和后端实现之间存在清晰的分离。不管认证一个用户的代码是针对一个SQL Server 2000数据库的Users表还是针对于一个活动目录存储,从页面开发者的观察看来代码都是相同的:

DataProvider.Instance().AuthenticateUser(username,password);

  而且,后端实现变化是透明的。

  因为系统架构师被鼓励创建默认的实现,所以提供者模型提供了两种世界的最好结合:如果对默认实现已经比较满意,那么系统会按预期进行工作;对于需要定制系统的用户来说,他们尽管定制好了而不必干扰现有代码或编程逻辑。这个设计模式也使得原型化和灵敏开发容易许多。例如,在早期系统使用阶段,仅使用默认实现可能更容易。然而,以后你可能需要定制某些方面以便把该工作与你的公司的现有系统集成到一起。这时,你可以通过提供者模型实现需要的定制。这意味着,不需要改变你的早期工作来反映后端实现的变化。

  就象许多好的设计模型一样,提供者模型也提供了开发者之间的职责分离。这样以来,一部分开发者可以使用他们精通的系统API进行工作,而另一部分开发者可以专注于后端实现和定制任务开发;而且,这两组人员可以工作在同一个系统上而不会相互干扰。而且,如果他们所使用的系统是一种工业标准(例如ASP.NET 2.0),那么这两类任务中的技能都可以被容易地移植到未来的工作中。

  四、 ASP.NET 2.0提供者模型

  ASP.NET 2.0在全部其架构中都利用提供者模型。例如,它的许多子系统-会员,站点导航,个性化等都利用了提供者模型技术。而且,每个子系统都提供一种默认实现,但也能使客户定制其功能以满足他们自己的需要。例如,ASP.NET 2.0的站点导航部分允许一个页面开发者定义他们网站的可导航的结构。然后,这些数据就可以被各种Web控件所使用以便显示站点地图、树状视图或菜单-它们能够高亮站点的导航并且/或者显示用户的站点位置。除了与导航相关的Web控件外,站点导航API还提供了一组方法用于实现与网站导航信息的交互。

  默认地,站点的可导航信息必须以一个正确格式化的XML文件编码。这种数据存储方式是,默认站点导航被硬编码使用。然而,ASP.NET 2.0的提供者模型可以使你更容易地使用你自己的数据存储来实现站点导航。例如,在一个我当前开发的工程中,使用的一个数据库包含站点中的页面信息以及不同的用户拥有页面中什么样的许可权。不是在一个XML文件中重新定义这些信息并且必须努力保持两份信息的及时更新;而是,通过利用ASP.NET 2.0中的站点导航功能,我可以简单地创建一个提供者类,它能够直接与数据库信息工作。一旦创建这个类并且在网站的配置中指定,导航Web控件就可以根据存储在数据库中的应用程序的定制导航信息进行工作。(注意:在本文成文之时,这个工程使用的仍然是ASP.NET 1.x;然而,这个例子却有希望能够向你展示提供者模型的优点。)

  作为个人,我想,提供者模型只是ASP.NET 2.0提供的最优秀的迁移特征之一。ASP.NET 2.0提供了很多开发者在1.x版本中必须定制的新特征。如果这些2.0版本的新特征使用过于"僵硬"的实现方式,那么它将阻止基于定制方案的正在使用中的1.x应用程序向它的迁移,因为许多新的ASP.NET 2.0 Web控件都使用了这些新的子系统。然而,有了提供者模型后,我们就可以把我们的1.x应用程序升级到2.0版本并且创建一个提供者以便使2.0版本的新的子系统与我们的定制方案集成到一起。这意味着,当迁移到2.0版本时,我们可以使用新的Web控件并且使它们通过提供者模型而自然地使用我们的现有系统。

  五、 补充信息

 
  • 下一篇资讯: aspnet_regiis.exe 用法
  • 网学推荐

    免费论文

    原创论文

    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号