Pregunta

Utilizando plantillas, ¿cómo puedo eliminar registros relacionados de varias tablas en una transacción?

¿Fue útil?

Solución

using (TransactionScope transactionScope = new TransactionScope())
{
  using (SharedDbConnectionScope sharedConnectionScope = new SharedDbConnectionScope())
  {
    new SubSonic.Query.Delete<Person>(new MyDB().Provider)
      .Where(PersonTable.IdColumn).IsEqualTo(1)
      .Execute();

    new SubSonic.Query.Delete<Basket>(new MyDB().Provider)
      .Where(BasketTable.IdColumn).IsEqualTo(1)
      .Execute();

    transactionScope.Complete();
  }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top