我正在用 C# 编写一个函数来记录用户在我们系统上的操作并将它们保存在数据库中。具体来说,我想在调用它们时记录某些业务逻辑功能。我想到了这样的日志记录方法:
public static LogMethod(string user, string methodName, object[] parameters, string message)
在方法内部,ToString()
为每个参数调用适当的函数。例如,对于方法 Foo,它的调用方式如下:
void Foo(int a, SomeObject b)
{
Logger.LogMethod(username, "Foo", new object[]{a,b}, "Beginning Foo");
//etc
}
这是记录函数调用的好方法吗?实现此目的的最佳实践是什么?它会以不好的方式影响性能吗?