2016-11-15 1 views
0

설명서에 따르면 다른 모든 사람들은 로그 파일에 쓸 때 String.Format() 접근 방식을 사용할 수 있어야합니다. 예를 들어, 문서에서 :NLog 로그 파일에 쓰기가 문자열 형식을 유지하지 않음

int k = 42; 
int l = 100; 

logger.Trace("Sample trace message, k={0}, l={1}", k, l); 

나는 다음과 같은 코드가 있습니다

Logger.Info("Server={0}, Port={1}, Interval(ms)={2}, Username={3}, Checking folder={4}", 
       Config.Server, Config.Port, Config.Username, Config.CSVFolder); 

... 로그 파일 그러나 출력은 다음과 같습니다 즉

2016-11-15 11:40:32.4472 INFO Server={0}, Port={1}, Interval(ms)={2}, Username={3}, Checking folder={4} 

매개 변수가 대체되지 않았습니다. Config.Server 등에서 올바른 값은 string, int, string, string입니다.

설명서 나 예제에서 수행해야 할 작업이 전혀 없습니다.

답변

0

내가 볼 수있는 유일한 잘못된 것은 매개 변수의 잘못된 번호입니다 ... 어쩌면 NLog가 동일하지 않으면 작동하지 않습니다?

+0

OMG 나는 가꾸름입니다. –

+0

또한 NLog는'String.Format'을 내부적으로 사용하기 때문에 메서드의 경계로 제한됩니다. 'String.Format'은 누락 된 인수가있을 때'FormatException'을 던집니다. (NLog의 내부 로그에 표시되어야 함) – Julian

관련 문제