using Newtonsoft.Json; using Newtonsoft.Json.Serialization; using System.Reflection; namespace RSecurityBackend.Utilities { /// /// Audit.NET Environment Skipping /// https://stackoverflow.com/questions/59627835/dont-include-environment-in-serialised-auditevents /// public class AuditNetEnvironmentSkippingContractResolver : DefaultContractResolver { /// /// instance /// public static readonly AuditNetEnvironmentSkippingContractResolver Instance = new AuditNetEnvironmentSkippingContractResolver(); /// /// create property /// /// /// /// protected override JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization) { JsonProperty property = base.CreateProperty(member, memberSerialization); property.ShouldSerialize = instance => member.Name != "Environment"; return property; } } }