Example #1
0
        private string GetSetForUpdate(AuditEvent auditEvent)
        {
            var jsonColumnName = JsonColumnNameBuilder?.Invoke(auditEvent);
            var ludColumn      = LastUpdatedDateColumnNameBuilder?.Invoke(auditEvent);
            var sets           = new List <string>();

            if (jsonColumnName != null)
            {
                sets.Add($"[{jsonColumnName}] = @json");
            }
            if (ludColumn != null)
            {
                sets.Add($"[{ludColumn}] = GETUTCDATE()");
            }
            if (CustomColumns != null && CustomColumns.Any())
            {
                for (int i = 0; i < CustomColumns.Count; i++)
                {
                    sets.Add($"[{CustomColumns[i].Name}] = @c{i}");
                }
            }
            return(string.Join(", ", sets));
        }
        private string GetReplaceCommandText(AuditEvent auditEvent)
        {
            var ludScript = LastUpdatedDateColumnNameBuilder != null?string.Format(", [{0}] = GETUTCDATE()", LastUpdatedDateColumnNameBuilder.Invoke(auditEvent)) : string.Empty;

            var cmdText = string.Format("UPDATE {0} SET [{1}] = @json{2} WHERE [{3}] = @eventId",
                                        GetFullTableName(auditEvent), JsonColumnNameBuilder.Invoke(auditEvent), ludScript, IdColumnNameBuilder.Invoke(auditEvent));

            return(cmdText);
        }