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

      WebForums.NET提供者模型-一个早期的原型
  相对于微软建议使用的提供者模型,Andy的提供者模型含有一些不足。一方面,WebForums.NET中提供了单个抽象基类,所有的API定义都聚集在这个类中。其负面作用在于,如果一个客户仅想定制系统的一小部分,例如用户信息的存储方式,那么他必须提供该系统中所有方法的实现。一种更好的方案是,为系统中的每一个逻辑实体创建一个抽象基类。例如,对于一个在线消息板应用程序来说,它可能需要一些类,如UsersProvider,ForumsProvider,PostsProvider,等等。然而,在你提供给一个客户的提供者数目之间也存在一个平衡问题。更多提供者允许更为细致的系统定制,但是也会相应地提高要求的配置标记的数量。
  另外,我已经展示了对WebForums.NET的提供者模型实现代码的作了进一步改进,以便使其更相似于微软在ASP.NET2.0中所使用的代码。我认为,Andy的想法应该是提供者模型的先驱,尽管微软的提供者模型实现更为清晰且更强壮一些。
  一方面,WebForums.NET在2002年三月为微软所收购;另一方面,RobHoward及其他人又在系统中加入了大量的新特征并且在ASP.NET论坛中以自由方式发行它。TodayRob及其小组成员已经把ASP.NET论坛变成了一个CommunityServer(它简直把博客、论坛、画廊、列表服务器、新闻阅读器等全部融为一体)。今天,Andy所创建的概念与实现被广泛应用ASP.NET论坛和CommunityServer中,甚至被应用于许多核心ASP.NET2.0组件中。
  三、提供者模型优点
  提供者模型提供许多优点。首先,在代码和后端实现之间存在清晰的分离。不管认证一个用户的代码是针对一个SQLServer2000数据库的Users表还是针对于一个活动目录存储,从页面开发者的观察看来代码都是相同的:  

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

NET技术深入ASP.NET 2.0的提供者模型(2),转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。