开发者

How to log method calls on targets marked with an attribute?

开发者 https://www.devze.com 2023-01-23 23:55 出处:网络
Is it possible to inject Loggin behaviour to the marked classes or/and methods like this: Log(\"Method {0} started\",GetMethodNameTroughReflection)

Is it possible to inject Loggin behaviour to the marked classes or/and methods like this:

Log("Method {0} started",GetMethodNameTroughReflection)
Call method body
Log("Method {0} Finished",GetMethodNameTroughReflection)

I want to create my own Attribute class, which will realize loging behaviour for method call.

I want to describe login behaviour in the app.config file, thoug it can be开发者_StackOverflow中文版 disabled by a setting in config.

How to do it right? Maybe there is created solution for tasks like this one?


This can be done using aspect-oriented programming (AOP). Have a look at PostSharp. See the sample for tracing here:

Non-Invasive Tracing & Logging


Search for 'aspect oriented programming' - Logging is a canonical example. for instance this link accomplishes it using PostSharp

0

精彩评论

暂无评论...
验证码 换一张
取 消