Ver Mensaje Individual
  #10 (permalink)  
Antiguo 14/09/2009, 09:18
luk17a5
 
Fecha de Ingreso: septiembre-2009
Mensajes: 12
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Transacciones en capas con transactionscope

Y Por último la clase de conexión a postgres con un singleton para obtener la instancia de conexión.

Public Class ConexionPostgresNpgsql
Public Shared Function ObtenerDatosNpgsql(ByVal nombreFuncion As String, ByVal ParamArray parametros() As ParametroNpgsql) As DataSet
Dim resultado As New DataSet

Dim Cn As New NpgsqlConnection(Configuracion.ObtenerInstancia.Co nnectionString)
Dim Cmd As New NpgsqlCommand()

Cmd.Connection = Cn
Cmd.CommandType = CommandType.StoredProcedure
Cmd.CommandText = nombreFuncion
For Each parametro As ParametroNpgsql In parametros
Dim nuevoParametro As New NpgsqlParameter
nuevoParametro.Value = parametro.Valor
nuevoParametro.NpgsqlDbType = parametro.Tipo
Cmd.Parameters.Add(nuevoParametro)
Next
Dim Da As New NpgsqlDataAdapter(Cmd)
Da.Fill(resultado)
'Cn.Close()
Return resultado
End Function
End Class


Public Class ParametroNpgsql
Private _tipo As NpgsqlTypes.NpgsqlDbType
Private _valor As Object

Public Property Tipo() As NpgsqlTypes.NpgsqlDbType
Get
Return _tipo
End Get
Set(ByVal value As NpgsqlTypes.NpgsqlDbType)
_tipo = value
End Set
End Property
Public Property Valor() As Object
Get
Return _valor
End Get
Set(ByVal value As Object)
_valor = value
End Set
End Property

Public Sub New(ByVal tipo As NpgsqlTypes.NpgsqlDbType, ByVal valor As Object)
Me.Tipo = tipo
Me.Valor = valor
End Sub
End Class

Bueno espero haber sido mas claro y poder solucionar el problema. Desde ya muchas Gracias!!!