Guest User

Untitled

a guest
Oct 23rd, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. public static void LancarFinanceiroPedido(List<Contas_Receber> lstContasReceber, List<Recebimentos_Contas_Receber> lstRecebimentos, List<Movimento_Conta> lstMovimentosConta, List<Caixa> lstLancamentosCaixa)
  2. {
  3. using (var ts = FuncoesDB.CreateTransactionScope())
  4. {
  5. foreach (var item in lstContasReceber)
  6. DAO<Contas_Receber>.Create(item);
  7.  
  8. foreach (var item in lstRecebimentos)
  9. DAO<Recebimentos_Contas_Receber>.Create(item);
  10.  
  11. throw new Exception("Exceção proposital para testar o TransactionScope!");
  12.  
  13. foreach (var item in lstMovimentosConta)
  14. DAO<Movimento_Conta>.Create(item);
  15.  
  16. foreach (var item in lstLancamentosCaixa)
  17. DAO<Caixa>.Create(item);
  18.  
  19. ts.Complete();
  20. }
  21. }
  22.  
  23. public static class DAO<T> where T : class
  24. {
  25. public static void Create(T entidade)
  26. {
  27. using (var db = new SETCOM_BaseDados())
  28. {
  29. db.Set<T>().Add(entidade);
  30. db.SaveChanges();
  31. }
  32. }
  33.  
  34. public static void Update(T entidade)
  35. {
  36. using (var db = new SETCOM_BaseDados())
  37. {
  38. ((IObjectContextAdapter)db).ObjectContext.ObjectStateManager.ChangeObjectState(entidade, System.Data.Entity.EntityState.Modified);
  39. db.SaveChanges();
  40. }
  41. }
  42.  
  43. public static void Delete(T entidade)
  44. {
  45. using (var db = new SETCOM_BaseDados())
  46. {
  47. db.Set<T>().Remove(entidade);
  48. db.SaveChanges();
  49. }
  50. }
  51.  
  52. public static T Find(object chave)
  53. {
  54. using (var db = new SETCOM_BaseDados())
  55. {
  56. return db.Set<T>().Find(chave);
  57. }
  58. }
  59.  
  60. public static List<T> FindAll()
  61. {
  62. using (var db = new SETCOM_BaseDados())
  63. {
  64. return db.Set<T>().ToList();
  65. }
  66. }
  67. }
Add Comment
Please, Sign In to add comment