在选定的方法在windows窗体上完成后,从这些方法调用自定义事件日志方法

本文关键字:方法 调用 事件 自定义 日志 windows 窗体 | 更新日期: 2023-09-27 18:10:06

我有一个带有自定义事件日志的windows窗体应用程序,该应用程序将一些数据存储在数据库中的表上。我记录这些事件的方式是这样的:

methodA()
{
    //some code
    performLog(someParameters);
}
performLog(someParameters)
{
   //save on the database
}

问题是,我需要调用方法performLog在我的windows应用程序中的许多方法,所以我的问题是,如果有一些更好的方法来实现这一点。像这样的?

[PerformLog]
methodA()
{
   //some code
}

其中PerformLog在methodA完成后生成performLog方法。显然,在某些特殊情况下,我会手动调用performLog方法。

实现这一点的最佳方法是什么?

在选定的方法在windows窗体上完成后,从这些方法调用自定义事件日志方法

为了能够在我的所有应用程序中执行通用日志记录,我生成了一个简单的静态类EventLogger,它实现了一个静态方法SendMessage(…)里面有我记录日志所需的参数和一个静态事件LogNewEntry

静态方法SendMessage使用给定数据启动静态事件。

这允许我实现LogNewEntry事件的事件处理程序只是一次(通常在program.cs for Winforms或App.xaml.cs在WPF)的事件处理程序执行日志上的文本文件或数据库或任何我需要的,在我的程序,每当我想记录的东西,我只是调用EventLogger.SendMessage(…)传递所需的数据。

如果你认为你想看到的代码,我可以张贴一个样本给你看。