ASP.NET - Acessando
arquivos DBF
Você precisa acessar e exibir os dados presentes em um arquivo DBF (padrão Xbase) na Web ? |
Então vem comigo que eu vou te mostrar como fazer isto.
Neste artigo eu vou acessar o arquivo DBF Teste.dbf que esta presente na pasta c:\teste.
Este arquivo possui os dados da tabela Authors do arquivo Biblio.mdb (lembra dele) e apresenta três campos :
Au_ID - que representa o código
do autor
Author - que representa o nome do autor
Year Born - que representa o ano de
nascimento do autor
Podemos usar um arquivo DBF usando o provedor OLE DB e é isto que eu vou fazer .
Como pretendo exibir os dados na web vou criar uma página ASP.NET usando o WebMatrix e exibir os dados em um controle DataGrid.
Abra então o Web Matrix e inclua um componente DataGrid na aba Design.
A seguir digite o código abaixo na guia Code. Este é o código que acessa o arquivo DBF.
Sub Page_Load(sender As Object, e As EventArgs) Dim con as OledbConnection Dim cmd as OleDbCommand Dim rd as OleDbDataReader con = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\teste;Extended Properties=dBase III") con.Open() cmd = new OleDbCommand("Select * from TESTE.DBF Where Au_ID < 30", con) rd = cmd.ExecuteReader() datagrid1.DataSource = rd datagrid1.dataBind rd.close cmd.dispose con.dispose end sub |
Na guia ALL inclua as declarações de imports referente aos namespace System.Data.OLeDb , conforme abaixo:
<%@ Page Language="VB" Debug="True" Trace="false" %> <%@ import Namespace="System.Data" %> <%@ import Namespace="System.Data.OleDb" %> |
O código completo deverá ser o seguinte :
A única coisa digna de menção é a string de conexão :
con = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\teste;Extended Properties=dBase III")
Nela você deve atentar para o seguinte :
Estou definindo como fonte de dados a pasta onde esta localizado o arquivo DBF ( c:\teste )
Estou informando o formato da fonte de dados via Extended Properties como dBaseIII
Estou selecionando do arquivo DBF somente os dados cujo campo AU_ID forem menores que 30 conforme instrução SQL : Select * from TESTE.DBF Where Au_ID < 30"
O resultado da execução da página no servidor WebMatrix é exibido abaixo:
Eu sei , é apenas ASP.NET , mas eu gosto..
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
Super DVD C# - Recursos de aprendizagens e vídeo aulas para C#
Curso Fundamentos da Programação Orientada a Objetos com VB .NET