
14/11/2007, 05:51
|
| | Fecha de Ingreso: julio-2006
Mensajes: 79
Antigüedad: 18 años, 8 meses Puntos: 0 | |
problema con TRANSACTIONSCOPE Buenas amigos, necesito una ayudita con una m**** de objeto llamado TRANSACTIONSCOPE, resulta que tengo un codigo:
private void btnADD_Click(object sender, EventArgs e)
{
try
{
scope = new TransactionScope();
string cad = @"Data Source=salberca\gestion;Initial Catalog=Northwind;Persist Security Info=True;User ID=sa;password=pwdgestion";
int vidcarpeta = int.Parse(txtIdCarpeta.Text);
string vdesccarpeta = txtDescCarpeta.Text;
int viddocumento = int.Parse(txtIddocumento.Text);
string vdscdocumento = txtDescDocumento.Text;
using (scope )
{
Carpeta.Add(cad, vidcarpeta, vdesccarpeta);
Documento.Add(cad, vidcarpeta, viddocumento, vdscdocumento);
scope.Complete();
}
scope.Dispose();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
scope.Dispose();
}
public static void Add(string cadena,int ID, string Desc)
{
try
{
SqlConnection cn = new SqlConnection(cadena);
SqlCommand cmd = new SqlCommand();
SqlParameter param1 = new SqlParameter("@IDENTIFICADOR", System.Data.SqlDbType.Int);
SqlParameter param2 = new SqlParameter("@DESCRIPCION", System.Data.DbType.String);
object miobjet= Transaction.Current;
param1.Value = ID;
param2.Value = Desc;
cmd.Parameters.Add(param1);
cmd.Parameters.Add(param2);
cn.Open();
cmd.Connection = cn;
cmd.CommandText = "CREAR_CARPETA";
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
Cuando en el metodo Add() voy a abir la conexion(cn.open()) me da el siguiente error"La transacion yaa se he realizado o se ha cancelado implicitamente o explicitamente"
¿Que esta pasado? plis ayudas
mas datos: uso c# 2005 y sql 2005 |