public void FormattedScalarsInteropAsStrings()
        {
            var sv = new ScalarValue(14);
            var iv = ObjectModelInterop.ToInteropValue(sv, "000.0");

            Assert.Equal("014.0", iv);
        }
        public void ScalarsInteropAsTheirValue()
        {
            var sv = new ScalarValue(14);
            var iv = ObjectModelInterop.ToInteropValue(sv);

            Assert.Equal(14, iv);
        }
        public override void Render(LogEvent logEvent, TokenEmitter emitToken)
        {
            var included = logEvent.Properties
                           .Where(p => !TemplateContainsPropertyName(logEvent.MessageTemplate, p.Key) &&
                                  !TemplateContainsPropertyName(_outputTemplate, p.Key))
                           .Select(p => new LogEventProperty(p.Key, p.Value));

            foreach (var property in included)
            {
                emitToken(ObjectModelInterop.ToInteropValue(property.Value, _token.Format));
            }
        }
Esempio n. 4
0
        public override void Render(LogEvent logEvent, TokenEmitter emitToken)
        {
            foreach (var token in logEvent.MessageTemplate.Tokens)
            {
                switch (token)
                {
                case TextToken tt:
                    emitToken(tt.Text);
                    break;

                case PropertyToken pt:
                    if (logEvent.Properties.TryGetValue(pt.PropertyName, out var propertyValue))
                    {
                        emitToken(ObjectModelInterop.ToInteropValue(propertyValue));
                    }
                    break;

                default:
                    throw new InvalidOperationException();
                }
            }
        }