有没有什么方法可以获取在方法和参数中声明的所有变量?如何获取在方法范围内声明的所有变量
我想在我想添加到日志的方法中获取所有变量及其值。 我可以使用MethodBase.GetCurrentMethod().GetParameters()
获得方法定义中收到的参数。 这也有一个缺点,我注意到,我必须明确地传递一些特定的方法来获取参数的值。我想要的是,我希望所有变量及其值以一般方式在方法范围中声明,而不明确给出任何特定于方法的参数(因为我想将相同的逻辑添加到几个方法中)。 任何人都有你的想法。
在此先感谢。
正如一个侧面说明,我不会建议这样做的日志记录。记录数百万不需要的东西,实际上会在尝试找到有用的东西时导致问题。 例如,想象一下你的方法中有'var index = 0',然后是'while'循环,以及这会如何将大量无用的信息添加到日志中。 – Charmander
如果您查看为某个方法生成的IL,您将看到局部变量的名称并不总是被保留下来。 –
“为几种方法添加相同的逻辑”?你能提供一个你想要实现的示例代码吗? – VJPPaz