Logging.Logger не содержит определения для SetLogWriter - PullRequest
0 голосов
/ 28 марта 2019

Скопированный код отсюда: https://www.c -sharpcorner.com / article / logging-block-in-microsoft-enterprise-library-6-0 /

public class LoggerBlock
{
    protected LogWriter logWriter;
    public LoggerBlock()
    {
        InitLogging();
    }
    private void InitLogging()
    {
        logWriter = new LogWriterFactory().Create();
        Logger.SetLogWriter(logWriter, false);
    }
    public LogWriter LogWriter
    {
        get
        {
            return logWriter;
        }
    }
}

ошибка компиляции:

Microsoft.Practies.EnterpriseLibrary.Logging.Logger не содержит определения для «SetLogWriter»

Извините, я даже не знаю, какая версияиз библиотеки, которую я установил. Я пытаюсь добавить некоторые операторы журналирования в существующую программу, которая, кажется, настроила app.config для ведения журнала Enterprise Library.

Intellisense предоставляет только следующий подобный метод:

Logger.SetContextItemLog (object key, object value) 

1 Ответ

1 голос
/ 28 марта 2019

Полагаю, вы используете более старую версию, в которой нет метода Logger.SetLogWriter().Я только что установил последнюю версию, и код, который вы вставили, работает нормально.Можете ли вы обновить версию, которую вы используете?

Редактировать: Похоже, что метод Logger.SetLogWriter() просто устанавливает Logger по умолчанию для использования только что созданного LogWriter.Как насчет использования созданного LogWriter напрямую вместо стандартного Logger?

var logWriter = new LogWriterFactory().Create();
logWriter.Write("Message");

В следующей статье также может быть дана дополнительная информация. Создание и запись записей журнала

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...