【问题标题】:C# hook into method start and finishC#挂钩到方法的开始和结束
【发布时间】:2009-11-30 20:37:57
【问题描述】:

这可能以前在这里已经回答过,我只是没有在寻找正确的东西。如果是这样,我很抱歉。

我想做的是在类的任何方法被调用并完成执行时自动执行一个方法。

知道我怎么能做到这一点吗?我研究了反射,但不确定这是否可行。

任何帮助表示赞赏:-)

【问题讨论】:

标签: c#


【解决方案1】:

如果您能够/在编译过程中做一些事情是有意义的,PostSharp 或 Mono.Cecil 是在构建时执行 AOP 的好工具。

否则go +1 Sam's answer

【讨论】:

    【解决方案2】:

    您可以使用面向方面的编程框架,例如 PostSharp。

    【讨论】:

      【解决方案3】:

      你可以使用回调。

      void SomeMethod ( delegate MyDelegate )
      {
      
      // do some things
      
      MyDelegate(); // execute method referenced by delegate 
      }
      

      您希望在 SomeMethod 完成时自动执行的方法,您通过 SomeMethod 中的委托。

      【讨论】:

      • 或部分方法。但他希望它适用于所有方法。这会变得乏味
      猜你喜欢
      • 2015-12-13
      • 2018-06-15
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 2018-04-13
      相关资源
      最近更新 更多