Estou com um grande problema e não sei se alguém poderia me ajudar, mas estou mesmo desesperado.
Estou fazendo o projeto da faculdade e me deparei com o seguinte: tenho q desenvolver em 3 camadas OO. Tenho uma camada de dados q faz conexão com o banco e traz os resultados de uma consulta SQL. Só q eu não quero mais inserir queries diretamente no meu código, portanto eu criei várias procedures q executarão todas as operações no banco. Crie uma função q recebe como argumento uma hashtable com os argumentos de um SQLParameter completo. Tipo como aí embaixo:
Public Function appendParamSQL(ByVal htParam As Hashtable) As SqlCommand
Dim i As Integer
objCommand = New SqlCommand
objCommand.CommandText = htParam("NomeProc")
objCommand.CommandType = CommandType.StoredProcedure
objCommand.Connection = Me.objConn
For i = 0 To htParam.Count
objParameter = New SqlParameter
objParameter.ParameterName = htParam("ParamName")
objParameter.SqlDbType = CType(htParam("Tipo"), SqlDbType)
objParameter.Size = CInt(htParam("Tamanho"))
objParameter.Value = htParam("Valor")
objParameter.Direction = CType(htParam("Direcao"), ParameterDirection)
objParameter = New SqlParameter
objCommand.Parameters.Add(objParameter)
Next
Return objCommand
End Function
Ou seja, vai me retornar um command completo pra só executar num adapter qualquer. O problema é: para cada parâmetro eu tenho q criar 5 chaves com os valores tipo:
Eu estou achando muito trabalhoso isso, mas preciso de abstração nesse caso. Haveria outro jeito de implementar esse absurdo de uma forma q eu não precise passar tantos dados pra apenas uma função?
Pergunta
Nabvchodhonozohr
Olá pessoal!
Estou com um grande problema e não sei se alguém poderia me ajudar, mas estou mesmo desesperado.
Estou fazendo o projeto da faculdade e me deparei com o seguinte: tenho q desenvolver em 3 camadas OO. Tenho uma camada de dados q faz conexão com o banco e traz os resultados de uma consulta SQL. Só q eu não quero mais inserir queries diretamente no meu código, portanto eu criei várias procedures q executarão todas as operações no banco. Crie uma função q recebe como argumento uma hashtable com os argumentos de um SQLParameter completo. Tipo como aí embaixo:
Ou seja, vai me retornar um command completo pra só executar num adapter qualquer. O problema é: para cada parâmetro eu tenho q criar 5 chaves com os valores tipo:Eu estou achando muito trabalhoso isso, mas preciso de abstração nesse caso. Haveria outro jeito de implementar esse absurdo de uma forma q eu não precise passar tantos dados pra apenas uma função?
Obrigado.
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados