Trabalhando com Firebird no Visual Studio (ASP.NET)

Criando uma aplicação ASP.NET

Como o Provider do Firebird para ADO.NET esta em uma versão beta (Beta 4) o mesmo apresenta um inconveniente, em aplicações ASP.NET, os componentes não são mostrados na Toolbox. Temos que criar nossa aplicação via código, mas o que não trás muito trabalho.

Para uma aplicação ASP.NET, a única diferença em relação a aplicação Windows Forms mostrada no artigo anterior (www.devmedia.com.br/visualizacomponente.aspx?comp=1218&site=1), é que usaremos um fbCommand no lugar do fbDataAdapter por questões de performance, pois não precisamos colocar um DataSet em memória, somente para mostrar os registros em um Grid.

Crie uma nova aplicação ASP.NET, através do menu File>New Web Site. Escolha a linguagem Visual C# e a ASP.NET Web Site. Clique em Web Site>Add Reference e escolha FirebirdClient – ADO.NET 2.0 Data Provider. Adicione no using o código: “FirebirdSql.Data.FirebirdClient”.

Adicione um DataGrid no formulário e no evento Load digite o seguinte código:

 

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

            SelectDados();

}

 

 Crie o método SelectDados usando o seguinte código:

 

private void SelectDados()

{

      string conexao =

       "User=SYSDBA;"                  +

        "Password=masterkey;"           +

        "Database=\Employee.fdb;"  +

        "DataSource=localhost;"         +

        "Port=3050;"                    +

        "Dialect=3;"                    +

        "Charset=NONE;"                 +

        "Role=;"                        +

        "Connection lifetime=15;"       +

        "Pooling=true;"                 +

        "MinPoolSize=0;"                +

        "MaxPoolSize=50;"               +

        "Packet Size=8192;"             +

        "ServerType=0";

      FbConnection cn = new FbConnection(conexao);

      cn.Open();

      FbCommand cmd = new FbCommand("select * from CUSTOMER", cn);

      DataGrid1.DataSource = cmd.ExecuteReader();

      DataGrid1.DataBind();

}

 

Estamos preenchendo o DataGrid com os dados da tabela Customer do banco de dados Employee.fdb que acompanha a instalação do Firebird (eu alterei no exemplo, o arquivo fdb para a pasta do projeto e utilizei o método Server.MapPath, passando como parâmetro o nome do arquivo do banco).

Ao executar a aplicação temos os dados da tabela Customer no DataGrid (Figura 1).

 

Figura 1. Preenchendo o DataGrid com uma tabela do Firebird no ASP.NET

A classe FbConnectionStringBuilder

Se você achou trabalhosa a string de conexão do Firebird, temos uma classe chamada FbConnectionStringBuilder que disponibiliza como propriedades os parâmetros da conexão. Adicione o seguinte código, antes da variável conexao:

 

FbConnectionStringBuilder cno = new FbConnectionStringBuilder();

cno.UserID = "SYSDBA";

cno.Password = "masterkey";

cno.Database = Server.MapPath("Employee.fdb");

cno.DataSource = "localhost";

 

Altere o parâmetro do fbConnection para a classe:

 

FbConnection cn = new FbConnection(cno.ToString());

 

Execute novamente a aplicação e veja que continuamos mostrando os dados no DataGrid, sendo que na string de conexão utilizamos a classe FbConnectionStringBuilder. Ainda temos mais propriedades da referida classe, que não foi necessária no exemplo.

Os outros controles do Firebird possuem as mesmas características/funcionalidades dos semelhantes da arquitetura ADO.NET, sendo assim muito fácil trabalhar com os mesmos.

Conclusões

Vimos neste artigo, como é fácil utilizar o provider do Firebird no Visual Studio 2005. Temos ainda a opção para trabalhar com backup/restore com o provider do Firebird. Mas esse assunto, trataremos em um próximo artigo. Até a próxima!