Olá pessoal.
    Vai uma dica muito legal e bem simples para vocês descobrirem os providers que estão instalados em sua máquina. A primeira coisa a saber é: Para que serve Provider Factories?
 
    Tudo começou assim. A versão 2.0 do Framework .NET introduziu o coneceito de Factory Model para ADO, por meio desse modelo é possível criar instâncias de objetos genéricos para acesso a dados, ou seja, você poderá criar uma aplicação Web para trabalhar com banco de dados Oracle, SQL ou ouros DBs ao mesmo tempo. Mas se você quiser trabalhar com uma aplicação que possui uma camada de dados neutra (sem ADO), então a dica será trabalhar com as Interfaces IDbConnection, IDbDataAdapter, IDbTransaction, IDbDataParameter, DbCommand.
   
    As classes que irão te ajudar a trabalhar com Provider Factories estão disponíveis dentro do nasmespace System.Data.Common.  Há dois métodos básicos que precisamos entender da classe DbProviderFactories:
   
    GetFactoryClasses: retorna um DataTable com todos os providers disponíveis no sistema
    GetFactory: retorna uma instância do tipo de Factory que está sendo usada por DbProviderFactories.
   
 
Começando a aplicação
 
    1. Abra o Visual Studio 2005 e crie uma nova aplicação WEB.
    2. Acrescente a namespace System.Data.Common
    3. Crie o seguinte método conforme descrito abaixo:
 
private void getProviders()
{
// cria um DataGrid dinâmino
DataGrid dg = new DataGrid();
// carrega todos os tipos de Providers suportados
dg.DataSource = DbProviderFactories.GetFactoryClasses();
dg.DataBind();
// adiciona o DataGrid dentro do único form existente
form1.Controls.Add(dg);
}
    4. No evento OnLoad da página faça a chamada do método criado acima
protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
      getProviders();
    }
}
    5. Pronto! Agora é só executar a sua aplicação e será exibido um DataGrid conforme a figura abaixo. No próximo artigo veremos como criar uma simples aplicação para trabalhar com Providers criado um esquema para área de homologação e outro para produção.