Creating a .NET Framework Data Provider Library
Each .NET Framework data provider you create should be assigned to a unique namespace. The exact name of the namespace is not important, but it must be unique and not shared with any other provider.
The interfaces that are required to implement a .NET Framework data provider are available in the System.Data namespace. In addition, the System.Data.Common namespace contains a DbDataAdapter utility class (see Selecting Interfaces and Classes for Implementation) for implementing a .NET Framework data provider.
The following example shows the code to begin a .NET Framework data provider, which uses the namespaces that contain the ADO.NET interfaces and any utility classes.
using System;
using System.Data;
using System.Data.Common;
namespace CompanyName.ProviderName
{
...
When compiling a .NET Framework data provider, you must supply to the compiler a reference to System.Data.dll, because the System.Data and System.Data.Common namespaces are contained in System.Data.dll. For example, if all the files containing the code to implement a .NET Framework data provider, written in Visual Basic .NET, were in a single directory with the extension ".vb", the following command would be issued from that directory to compile the files stored in CompanyName.ProviderName.dll.
vbc /target:library /out:CompanyName.ProviderName.dll *.vb /r:System.dll /r:System.Data.dll
The following code example shows the command that would be used for C# files, with the extension ".cs".
csc /target:library /out:CompanyName.ProviderName.dll *.cs /r:System.dll /r:System.Data.dll
See Also
Implementing a .NET Framework Data Provider | Getting Started with a .NET Framework Data Provider Implementation | Sample .NET Framework Data Provider