public override void OnScopeSaving(AuditScope auditScope)
 {
     if (!Singleton.Instance.Audit)
     {
         auditScope.Discard();
     }
     auditScope.SetCustomField("Ip", Singleton.Instance.Ip);
 }
            public void TestUpdate()
            {
                var order      = DbCreateOrder();
                var reasonText = "the order was updated because ...";
                var eventType  = "Order:Update";

                //struct
                using (var a = AuditScope.Create(eventType, () => new TestStruct()
                {
                    Id = 123, Order = order
                },
                                                 new { ReferenceId = order.OrderId }))
                {
                    a.SetCustomField("TestGuid", Guid.NewGuid());
                    order = DbOrderUpdateStatus(order, OrderStatus.Submitted);
                }

                order = DbCreateOrder();

                //audit multiple
                using (AuditScope.Create(eventType, () => new { OrderStatus = order.Status, Items = order.OrderItems },
                                         new { ReferenceId = order.OrderId }))
                {
                    order = DbOrderUpdateStatus(order, OrderStatus.Submitted);
                }

                order = DbCreateOrder();


                using (var audit = AuditScope.Create("Order:Update", () => order.Status, new { ReferenceId = order.OrderId }))
                {
                    audit.SetCustomField("Reason", reasonText);
                    audit.SetCustomField("ItemsBefore", order.OrderItems);
                    audit.SetCustomField("FirstItem", order.OrderItems.FirstOrDefault());

                    order = DbOrderUpdateStatus(order, IntegrationTests.OrderStatus.Submitted);
                    audit.SetCustomField("ItemsAfter", order.OrderItems);
                    audit.Comment("Status Updated to Submitted");
                    audit.Comment("Another Comment");
                }

                order = DbCreateOrder();

                using (var audit = new AuditScope(eventType, () => order, new { ReferenceId = order.OrderId }))
                {
                    audit.SetCustomField("Reason", "reason");
                    ExecuteStoredProcedure(order, IntegrationTests.OrderStatus.Submitted);
                    order.Status = IntegrationTests.OrderStatus.Submitted;
                    audit.Comment("Status Updated to Submitted");
                }

                order = DbCreateOrder();
            }
Beispiel #3
0
 private void SaveAuditScope(AuditScope auditScope, AuditWcfEvent auditWcfEvent)
 {
     auditScope.SetCustomField(AuditBehavior.CustomFieldName, auditWcfEvent);
     auditScope.Save();
 }
Beispiel #4
0
 /// <summary>
 /// Saves the scope.
 /// </summary>
 private void SaveScope(AuditScope scope, EntityFrameworkEvent @event)
 {
     scope.SetCustomField("EntityFrameworkEvent", @event);
     OnScopeSaving(scope);
     scope.Save();
 }