我如何格式化我的 nLog 布局

jun*_*one 2 c# nlog

我的 nLog 布局如下所示

  fileTarget.Layout =  "${date}  ${message}";
Run Code Online (Sandbox Code Playgroud)

在我的代码中,我记录如下

  logger.Info("ORDER UPDATE",order.Name,order.Instrument,order.OrderState);
Run Code Online (Sandbox Code Playgroud)

但是它只记录第一个字符串,例如。

11/22/2012 22:37:16  ORDER UPDATE
11/22/2012 22:37:16  ORDER UPDATE
11/22/2012 22:37:16  ORDER UPDATE
11/22/2012 22:37:16  ORDER UPDATE
Run Code Online (Sandbox Code Playgroud)

我很确定我的布局中遗漏了一些东西,但不知道如何修复它。有人可以指出我的错误吗?

drz*_*aus 5

或者您可以使用string.Format(ie Console.WriteLine) 样式期望令牌替换,这可能是您打算使用的:

logger.Info("ORDER UPDATE: Name = {0}; Instrument = {1}; State = {2} ", order.Name, order.Instrument, order.OrderState);
Run Code Online (Sandbox Code Playgroud)

而不是为每个Logger请求假设相同数量的消息。