COMO FAZER CLASSE DE PERSISTENCIA?

MARCOS 09/11/2010 14:18:47
#356986
Bom dia!
Pessoal,Programo em VB 6.0. Mas sou iniciante em VB.NET.
Estou tentando criar uma classe de persistencia para usar
sempre que for precisar contruir um Cadastro, seja de cliente,
fornecedor,produto,etc...Algo que eu possa usar para manipular
o BD.Criei a classe abaixo.O read funciona perfeito, mas os outros
métodos não estão funcionando. Algum colega pode me dizer a
causa?????


Obs: Além disso, se algum colega puder me sugerir,qualquer
mudança,para tornar a classe melhor fico grato.


--------------------------------------------------------------------------------------------------------------

Imports System.Data.OleDb
Public Class ClPersistencia


Public Sub New()

End Sub


Public Shared Function Conexao() As OleDbConnection

[ô]Declaro variável para representar o objeto
Dim Con As New OleDbConnection

[ô]Define a String de conexão
Con.ConnectionString = [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source= C:\BD\Bd1.mdb;Jet OLEDB:Database Password=[Ô]

[ô]Abre conexao
Con.Open()

[ô]Retorna valor
Return Con

End Function


Public Shared Sub Create(ByVal Instrucao_Sql As String)

[ô]Cria comando
Dim Comando As New OleDbCommand()

[ô]Define tipo de comando
Comando.CommandType = CommandType.Text

[ô]Define comando de texto
Comando.CommandText = Instrucao_Sql

[ô]Cria DataAdapter
Dim Da As New OleDbDataAdapter()

[ô]Abrir conexão
Conexao()

[ô]Executa
Da.InsertCommand = Comando

[ô]Fechar conexão
Conexao.Close()

End Sub


Public Shared Function Read(ByVal Instrucao_Sql As String) As DataTable

[ô]Cria DataAdapter
Dim Da As New OleDbDataAdapter(Instrucao_Sql, Conexao)

[ô]Declara variável para representar objeto [ô]DataTable[ô]
Dim Dt As New DataTable

[ô]Transfere dados
Da.Fill(Dt)

[ô]Retorna valor
Return Dt


End Function

Public Sub Updade(ByVal Instrucao_Sql)

[ô]Cria comando
Dim Comando As New OleDbCommand

[ô]Define tipo de comando
Comando.CommandType = CommandType.Text

[ô]Define comando de texto
Comando.CommandText = Instrucao_Sql

[ô]Cria DataAdapter
Dim Da As New OleDbDataAdapter()

[ô]Abrir conexão
Conexao()

[ô]Executa
Da.UpdateCommand = Comando

[ô]Fechar conexão
Conexao.Close()

End Sub

Public Shared Sub Delete(ByVal Instrucao_Sql)

[ô]Cria comando
Dim Comando As New OleDbCommand

[ô]Define tipo de comando
Comando.CommandType = CommandType.Text

[ô]Define comando de texto
Comando.CommandText = Instrucao_Sql

[ô]Cria DataAdapter
Dim Da As New OleDbDataAdapter()

[ô]Abrir conexão
Conexao()

[ô]Executa
Da.DeleteCommand = Comando

[ô]Fechar conexão
Conexao.Close()

End Sub


End Class


WEBSTERGONTIJO 09/11/2010 14:25:02
#356989
Resposta escolhida
Imports System.Data.SqlClient

Public Class Conexaobd
Dim conect As New SqlConnection([Ô]Data Source=SERVIDOR01\SQLEXPRESS;AttachDbFilename=d:\bd\LOJA.mdf;user id=sa;password=masterkey[Ô])
Dim command As SqlCommand = conect.CreateCommand
Dim dataReader As SqlDataReader
Public Sub open()
conect.Open()

End Sub

Public Sub executeQuery(ByVal query As String)

Me.command.CommandText = query
Me.command.ExecuteNonQuery()

End Sub

Public Function getResult() As System.Data.DataTable

Dim dataTable As DataTable



dataTable = New DataTable()
dataReader = Me.command.ExecuteReader(CommandBehavior.CloseConnection)

dataTable.Load(dataReader, LoadOption.OverwriteChanges)

dataReader.Close()
dataReader.Dispose()
conect.Close()

Return (dataTable)

End Function

Public Sub close()

If ((Me.conect Is Nothing) = False) Then


If (Me.conect.State = ConnectionState.Open) Then

Me.conect.Close()

End If

End If

End Sub

End Class


Essa ai e minha


pega ai


abraços
MARCOS 10/11/2010 17:26:20
#357150
Pessoal,
O exemplo do colega acima ajuda bastante.
Mas, o meu problema'são os métodos de Create,Update e delete.

Algum colega, pode me dizer o que esta errado na minha classe,
para que os métodos Create,Update e delete não estejam funcionando????
Tópico encerrado , respostas não são mais permitidas