public static void DesConectar(this IAbstractDataContext context)
 {
     if (context.GetConnectionState() == ConnectionState.Open)
     {
         context.GetConexao().Connection.Close();
     }
 }
        //-- conexao

        private static ConnectionState?GetConnectionState(this IAbstractDataContext context)
        {
            try
            {
                return(context?.GetConexao()?.Connection?.State ?? null);
            }
            catch { }

            return(null);
        }
 public static void RoolBackTransaction(this IAbstractDataContext context) =>
 context.GetConexao().RoolBackTransaction();
 public static void CommitTransaction(this IAbstractDataContext context) =>
 context.GetConexao().CommitTransaction();
        //-- transaction

        public static void BeginTransaction(this IAbstractDataContext context) =>
        context.GetConexao().BeginTransaction();