Пример #1
0
 public MethodLogMessageFactory(
     ILogMessageSettings logMessageSettings,
     ILogValueMapper logValueMapper)
 {
     _logMessageSettings = logMessageSettings ?? throw new ArgumentNullException();
     _logValueMapper     = logValueMapper ?? throw new ArgumentNullException();
 }
        public static string ToJson(this ILogValueMapper logValueMapper, object traceValue)
        {
            var targetTraceValue = logValueMapper.Map(traceValue);

            var json = JsonConvert.SerializeObject(targetTraceValue, JsonSettings);

            return(json);
        }
        public static object[] ToArgs(this ILogValueMapper logValueMapper, MethodInput input)
        {
            if (input == null)
            {
                throw new ArgumentNullException();
            }

            var args = input.Method.GetParameters()
                       .Select(i => new
            {
                i.Name,
                Value = logValueMapper.Map(input.Arguments[i.Position])
            });

            return(args.ToArray());
        }