提供者类在.NET世界中意味着什么?

时间:2010-03-19 09:44:32

标签: .net provider

有许多类具有此provider后缀。 (数据,成员,modelmetadata,...)。

什么时候应该是一个被称为提供者类的类?

2 个答案:

答案 0 :(得分:5)

提供程序主要位于您的逻辑和任何类型的数据存储之间(数据库,xml等)。 MSDN提到:

  

提供商抽象存储媒体的方式与设备驱动程序抽象硬件设备的方式大致相同。

有关详细信息:Microsoft ASP.NET 2.0 Providers: Introduction

例如: 您不想使用数据库或XML,而是希望在网络中某个位置的磁盘上使用平面文件存储。要对此进行管理,您需要构建一个自定义提供程序并在逻辑中使用它来保存数据。

答案 1 :(得分:4)

以下是MS提供商模式的描述(http://msdn.microsoft.com/en-us/library/ms972319.aspx):

  

模式本身非常   简单,并给出了名称   “提供者”,因为它提供了   API的功能。定义,a   提供者只是一个契约   API和业务逻辑/数据   抽象层。提供者是   API的实现分开   来自API本身。例如,   新的Whidbey会员功能有一个   静态方法调用   Membership.ValidateUser()。该   成员类本身不包含   商业逻辑;相反,它只是   将此调用转发给已配置的   供应商。这是责任   包含的提供者类   该方法的实现,   调用任何业务逻辑层   (BLL)或数据访问层(DAL)是   必要的。

     

有一些规则如何   提供者的行为。提供者   实施必须来自于   抽象基类,用于   为特定的人定义合同   特征。例如,创建一个   您是Oracle的会员提供商   创建一个新类   OracleMembershipProvider,其中   派生自MembershipProviderBase。   例如,功能基类   MembershipProviderBase,反过来   派生自一个共同的ProviderBase   基类。 ProviderBase类是   用于将实施者标记为   提供者并强制实施   所需方法和财产   所有提供商都很常见。图4   给出了继承的一个例子   链