using System; using System.Collections.Generic; namespace PostSharp.Samples.Audit.Extended { public class DbAuditRecord { public DbAuditRecord(string user, Guid businessObject, IEnumerable<Guid> relatedBusinessObjects, string method, string description) { User = user; PrimaryBusinessObjectId = businessObject; Method = method; Description = description; RelatedBusinessObjectIds = relatedBusinessObjects; } public Guid PrimaryBusinessObjectId { get; } public IEnumerable<Guid> RelatedBusinessObjectIds { get; } public string Method { get; } public string User { get; } public string Description { get; } public DateTimeOffset Time { get; } = DateTimeOffset.Now; public void AppendToDatabase() { Console.WriteLine( $"Writing to the database: {{PrimaryBusinessObjectId={PrimaryBusinessObjectId}, Operation={Method}, Description=\"{Description}\", User={User}}}."); foreach (var id in RelatedBusinessObjectIds) { Console.WriteLine($"Writing to database: correlation with BusinessObjectId={id}."); } } } }