Defines the contract that ASP.NET implements to provide profile services using custom profile providers.
See Also: ProfileProvider Members
ASP.NET profiles offer persistent storage and retrieval of user-specific properties. Profile property values and information are stored in a data source in a manner determined by the System.Web.Profile.ProfileProvider implementation. You can use the profile providers that are included with the .NET Framework (represented by the classes that derive from the System.Web.Profile.ProfileProvider abstract class), or you can implement your own provider by creating a new class that derives from System.Web.Profile.ProfileProvider.
There are two primary reasons for creating a custom profile provider.
You need to store profile information in a data source that is not supported by the profile providers included with the .NET Framework, such as a FoxPro database, an Oracle database, or other data stores.
You need to manage profile information using a database schema that is different from the database schema used by the providers that ship with the .NET Framework. A common example of this would be user data that already exists in a SQL Server database for a company network or a Web site.
The System.Web.Profile.ProfileProvider abstract class inherits from the System.Configuration.SettingsProvider abstract class, which inherits from the System.Configuration.Provider.ProviderBase abstract class. Classes that implement System.Web.Profile.ProfileProvider must also implement the required members of the System.Configuration.SettingsProvider and System.Configuration.Provider.ProviderBase abstract classes. For more information about implementing a profile provider, see Implementing a Profile Provider.