Вход в CSV с использованием Enterprise Library с заголовком - PullRequest
0 голосов
/ 14 апреля 2011

Я использую Enterprise Library для записи данных в файл CSV.Он записывает в файл CSV, но не включает заголовки и записывает все параметры в другую строку. Что-то вроде этого:

Timestamp: 4/14/2011 6:41:49 PM
Message: Starting Application
Category: General
Priority: -1
EventId: 0
Severity: Information
Title:
Machine: 
App Domain: EnterpriseLib.vshost.exe
ProcessId: 10792
Process Name: 
Thread Name: 
Win32 ThreadId:7976
Extended Properties: 

Есть ли способ отформатировать выходной журнал, чтобы иметь параметрыперечислены в табличной форме с заголовками, такими как метка времени, категория и т. д.

1 Ответ

0 голосов
/ 14 апреля 2011

Под заголовками подразумевается заголовок вверху файла?Или заголовок для каждой записи в файле?

Выходной формат контролируется шаблоном форматирования.Обычно это определяется в файле конфигурации.Для файла CSV вы хотели бы использовать шаблон, подобный следующему:

<formatters>
  <add template="&quot;{timestamp}&quot;,&quot;{severity}&quot;,&quot;{message}&quot;"
    type="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=null"
    name="SimpleTextFormatter" />
</formatters>

Это приведет к следующему выводу:

"14.04.2011 7:34:53 PM "," Информация "," Это сообщение! "

Вы можете использовать инструмент конфигурирования для вставки любых других токенов (например, {категория}), которые вы хотите зарегистрировать.

Обратите внимание, что если вы хотите использовать правильный формат CSV, вам нужно будет избегать двойных кавычек.

...