Gracias por la excelente ayuda Diego, como no hay opción entonces
estoy realizando la operación con sql nativo, entonces lo primero q
hago es setear IDENTIY_INSERT en ON para poder realizar la inserción;
como son varios registros entonces estoy realizando un inserción en
batch (<property name="adonet.batch_size">100</property>). Les coloco
el código:
using (ITransaction transaccion = Sesion.BeginTransaction())
{
IDbCommand comando = Sesion.Connection.CreateCommand();
if (Sesion.Transaction != null &&
Sesion.Transaction.IsActive)
{
Sesion.Transaction.Enlist(comando);
}
comando.CommandText = "SET IDENTITY_INSERT Modulo ON";
comando.ExecuteNonQuery();
IQuery queryModulo = Sesion.CreateSQLQuery
("INSERT INTO Modulo (IdModulo, Nombre)
VALUES(:IdModulo, :Nombre);")
.SetParameter("IdModulo", datos.IdModulo)
.SetParameter("Nombre", datos.Nombre);
queryModulo.ExecuteUpdate();
comando.CommandText = "SET IDENTITY_INSERT Modulo OFF";
comando.ExecuteNonQuery();
//********** OTROS INSERTS
.............
.............
}
El problema es q no puedo ejecutar nada, me sale el error "could not
execute native bulk manipulation query". Porq puede ocurrir el error?
Hay alguna forma de corregirlo?
Gracias de antemano por la ayuda.
--
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano