Domanda

Ci sono molte classi che hanno questo suffisso provider. (I dati, appartenenza, modelmetadata, ...).

Quando dovrebbe essere una classe chiamata come classe fornitore?

È stato utile?

Soluzione

I fornitori sono per lo più tra la logica e memorizza i dati di qualsiasi tipo (database, xml, etc.). MSDN cita:

  

Provider supporti di memorizzazione astratto più o meno allo stesso modo in cui i driver di periferica astratto dispositivi hardware.

Per ulteriori informazioni: Microsoft ASP.NET 2.0 Provider: Introduzione

Ad esempio: Invece di lavorare con un database o XML, si desidera lavorare con la memorizzazione di file piatta su un disco da qualche parte all'interno della rete. Per gestire questo si costruisce un provider personalizzato e utilizzarlo nella vostra logica per salvare i dati.

Altri suggerimenti

Ecco descrizione del modello di fornitore da MS (http://msdn.microsoft.com/en-us/library/ms972319.aspx):

  

Il modello stesso è estremamente   semplice e viene dato il nome   "Provider" in quanto fornisce la   funzionalità per un'API. Definito, un   fornitore è semplicemente un contratto tra   un'API e la Business Logic / Data   Livello di astrazione. Il fornitore è la   implementazione delle API separata   dall'API stessa. Ad esempio, la   nuova funzione di appartenenza Whidbey ha un   metodo statico chiamato   Membership.ValidateUser (). Il   classe di appartenenza per sé non contiene   logica di business; invece semplicemente   inoltra questo invito alla configurato   fornitore. E 'responsabilità di   la classe fornitore per contenere la   attuazione di tale metodo,   chiamando qualunque Business Layer Logic   (BLL) o Data Access Layer (DAL) è   necessario.

     

Ci sono alcune regole su come un   fornitore si comporta. Un provider   attuazione deve derivare da un   classe astratta di base, che viene utilizzato per   definire un contratto per un particolare   caratteristica. Ad esempio, per creare un   provider di appartenenze per Oracle, è   creare una nuova classe   OracleMembershipProvider, che   deriva da MembershipProviderBase.   La classe funzione di base, ad esempio,   MembershipProviderBase, a sua volta   deriva da una comune ProviderBase   classe di base. La classe è ProviderBase   utilizzato per contrassegnare gli esecutori come   provider e costringe l'attuazione   di un metodo richiesto e proprietà   comune a tutti i fornitori. Figura 4   fornisce un esempio dell'eredità   catena.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top