0

您好我正在使用 Enterprise library 5.0 在文本文件中记录消息,作为其中的一部分,我需要将消息集合记录到文本文件中。

下面是使用 flatfilelistener 记录到文本文件的代码部分

public void LogToFile(string message, string category, IDictionary<string, object> additionalDetail)
{
    var logger = EnterpriseLibraryContainer.Current.GetInstance<LogWriter>();

    logger.Write(message, category, 0, 0, TraceEventType.Error, string.Empty, additionalDetail);
}

以上将在文本文件中记录单个消息,就像我将调用我需要记录的集合中的每个项目。

那么,如何一次性记录所有内容?就像放置在缓冲区中并在单次拉伸时更新日志文件。

我猜有一个名为“AutoFlush”的属性,但我不知道如何使用它。

4

1 回答 1

1

使用自动冲洗

这可能是你最好的选择。只需让缓冲区处理它或创建一个自定义刷新机制,您可以在指定的持续时间内调用该机制,例如 http 请求的结束,或者如果您在应用程序崩溃并且您不能信任 autoflush 工作时偏执。

于 2013-04-25T01:53:22.993 回答