Esempio n. 1
0
        public static DataTable GetCdcTableData(DbConnection connection, string captureInstance, string fromLsn = null, string toLsn = null)
        {
            var sb = new StringBuilder();

            sb.AppendLine(BuildQueryHeader(fromLsn, toLsn));
            sb.AppendLine(BuildQueryBody(captureInstance));

            using (var cmd = DbCommandFactory.Create(sb.ToString(), connection))
                using (var da = DataAdapterFactory.Create(cmd))
                {
                    cmd.Parameters.AddWithValue(@CaptureInstance, captureInstance);
                    cmd.Parameters.AddWithValue(@RawLsnFrom, (object)fromLsn ?? DBNull.Value);
                    cmd.Parameters.AddWithValue(@RawLsnTo, (object)toLsn ?? DBNull.Value);

                    var dt = new DataTable();
                    da.Fill(dt);
                    return(dt);
                }
        }