Welcome 微信登录

首页 / 网页编程 / ASP.NET / Enterprise Library 2.0 Hands On Lab 翻译(4):日志应用程序块(一)

Enterprise Library 2.0 Hands On Lab 翻译(4):日志应用程序块(一)2010-03-02 cnblogs TerryLee练习1:添加日志记录到应用程序中

该练习将示范如何向已有的应用程序中添加日志和监测(Trace姑且这么翻译吧,不太准确),并通过Enterprise Library Configuration工具来配置TraceListeners。

第一步

打开EnoughPI.sln项目,默认的安装路径应该为C:Program FilesMicrosoft Enterprise Library January 2006labscsLoggingexercisesex01egin,并编译。

第二步 关于练习应用程序

选择Debug | Start Without Debugging菜单命令并运行应用程序,EnoughPI程序用来计算∏的精度。在NumericUpDown控件中输入你希望的精度并点击Calculate按钮。

第三步 添加日志

1.选择EnoughPI项目,选择Project | Add Reference …菜单命令,在打开的对话框中选择Browse,并添加如下程序集。

Microsoft.Practices.EnterpriseLibrary.Logging.dll;

默认的位置应该是C:Program FilesMicrosoft Enterprise Library January 2006in。

2.在解决方案管理器中选择CalcCalculator.cs文件,选择View | Code菜单命令,并添加如下命名空间。

using Microsoft.Practices.EnterpriseLibrary.Logging;

3.记录计算完成时的信息在Calculator.cs文件的OnCalculated方法中添加如下代码。

protected void OnCalculated(CalculatedEventArgs args)
{
// TODO: Log final result
LogEntry log = new LogEntry();
log.Message = string.Format("Calculated PI to {0} digits", args.Digits);
log.Categories.Add(Category.General);
log.Priority = Priority.Normal;

Logger.Write(log);

if (Calculated != null)
Calculated(this, args);
}

创建了一个新的日志项LogEntry并设置参数,使用Logger类的静态方法Write()记录到一个或多个TraceListener。注意这里没有使用硬编码而使用常量的Category和Priority,在EnoughPI.Logging的Constants.cs中作了如下定义:

public struct Priority
{
public const int Lowest = 0;
public const int Low = 1;
public const int Normal = 2;
public const int High = 3;
public const int Highest = 4;
}
public struct Category
{
public const string General = "General";
public const string Trace = "Trace";
}