What does a provider class mean in the .NET world?

.net, provider

Solution

Providers mostly are between your logic and data stores of any kind (database, xml, etc.). MSDN mentions:

Providers abstract storage media in much the same way that device drivers abstract hardware devices.

For more information: Microsoft ASP.NET 2.0 Providers: Introduction

For example: In stead of working with a database or XML, you want to work with flat file storage on a disk somewhere within your network. To manage this you build a custom provider and use it within your logic to save the data.

Problem

There are many classes having this `provider` suffix. (Data,membership,modelmetadata,...). When should be a class called as a provider class ?

Original source