ConstructProperties() публичный Метод

Create properties based on an ordered list of provided values.
public ConstructProperties ( Serilog.Events.MessageTemplate messageTemplate, object messageTemplateParameters ) : IEnumerable
messageTemplate Serilog.Events.MessageTemplate The template that the parameters apply to.
messageTemplateParameters object Objects corresponding to the properties /// represented in the message template.
Результат IEnumerable
Пример #1
0
 static string Render(string messageTemplate, params object[] properties)
 {
     var mt = new MessageTemplateParser().Parse(messageTemplate);
     var binder = new PropertyBinder(new PropertyValueConverter(Enumerable.Empty<Type>(), Enumerable.Empty<IDestructuringPolicy>()));
     var props = binder.ConstructProperties(mt, properties);
     var output = new StringBuilder();
     var writer = new StringWriter(output);
     mt.Render(props.ToDictionary(p => p.Name), writer);
     writer.Flush();
     return output.ToString();
 }
 static IEnumerable<LogEventProperty> Capture(string messageTemplate, params object[] properties)
 {
     var mt = new MessageTemplateParser().Parse(messageTemplate);
     var binder = new PropertyBinder(
         new PropertyValueConverter(10, Enumerable.Empty<Type>(), Enumerable.Empty<IDestructuringPolicy>(), false));
     return binder.ConstructProperties(mt, properties);
 }
Пример #3
0
 public void Process(string messageTemplate, object[] messageTemplateParameters, out MessageTemplate parsedTemplate, out IEnumerable <LogEventProperty> properties)
 {
     parsedTemplate = _parser.Parse(messageTemplate);
     properties     = _propertyBinder.ConstructProperties(parsedTemplate, messageTemplateParameters);
 }
 static string Render(IFormatProvider formatProvider,
     string messageTemplate, params object[] properties)
 {
     var mt = new MessageTemplateParser().Parse(messageTemplate);
     var binder = new PropertyBinder(new PropertyValueConverter(10, Enumerable.Empty<Type>(), Enumerable.Empty<IDestructuringPolicy>()));
     var props = binder.ConstructProperties(mt, properties);
     var output = new StringBuilder();
     var writer = new StringWriter(output);
     var dict = System.Collections.Generic.Net40ReadOnlyDictionaryExtensions
         .ToDictionary40(props, p => p.Name, p => p.Value);
     mt.Render(dict, writer, formatProvider);
     writer.Flush();
     return output.ToString();
 }