Was bedeutet eine Provider-Klasse in der .NET-Welt?
Frage
Es gibt viele Klassen dieses provider
Suffix. (Daten, die Mitgliedschaft, modelmetadata, ...).
Wann sollte eine Klasse als Provider-Klasse genannt werden?
Lösung
Anbieter sind meist zwischen Logik und Daten speichert jeglicher Art (Datenbank, XML, etc.). MSDN erwähnt:
Anbieter abstrakte Speichermedien in der gleichen Weise, dass Gerätetreiber abstrakte Hardware-Geräte.
Für weitere Informationen: Microsoft ASP.NET 2.0 Provider: Einführung
Beispiel: Anstatt mit einer Datenbank oder XML arbeiten, möchten Sie die Arbeit mit Flat-File-Speicherung auf einem Datenträger irgendwo in Ihrem Netzwerk. Zur Verwaltung dieser Sie einen benutzerdefinierten Anbieter bauen und verwenden Sie es in Ihrer Logik, um die Daten zu speichern.
Andere Tipps
Hier ist die Beschreibung des Anbieters Muster von MS (http://msdn.microsoft.com/en-us/library/ms972319.aspx):
Das Muster selbst ist außerordentlich einfach und wird den Namen gegeben „Anbieter“, da sie die liefert Funktionalität für eine API. Definiert, ein Anbieter ist einfach ein Vertrag zwischen eine API und die Business-Logik / Daten Abstraction Layer. Der Anbieter ist die Implementierung der API trennen von der API selbst. Zum Beispiel kann die neue Whidbey Membership-Funktion hat eine statische Methode aufgerufen Membership.ValidateUser (). Das Membership-Klasse selbst enthält keine Geschäftslogik; anstatt es einfach leitet diesen Anruf an den konfigurierten Anbieter. Es liegt in der Verantwortung die Provider-Klasse enthält die Implementierung für diese Methode, Aufruf unabhängig von Business-Logik-Schicht (BLL) oder Data Access Layer (DAL) ist erforderlich.
Es gibt einige Regeln, wie ein Anbieter benimmt. Ein Anbieter Umsetzung muss von einem ableiten abstrakte Basisklasse, die verwendet wird, definieren einen Vertrag für einen bestimmten Feature. Zum Beispiel erstellen Mitgliedschaft Provider für Oracle, Sie Erstellen Sie eine neue Klasse OracleMembershipProvider, die ergibt sich aus MembershipProviderBase. Die Feature-Basisklasse, zum Beispiel, MembershipProviderBase, wiederum ergibt sich aus einem gemeinsamen Provider Basisklasse. Die Provider Klasse ist Mark Implementierer als ein gebrauchter Anbieter und zwingt die Umsetzung ein erforderliches Verfahren und Eigentum gemeinsam für alle Anbieter. Figur 4 gibt ein Beispiel für die Vererbung Kette.