如何在执行其他具有多次重载的其他方法之前/之后执行方法?

时间:2010-12-08 10:22:53

标签: c# .net-2.0

我有一个已经开发并正在使用的现有应用程序。

一个类的一个方法(称为Read())有多个重载。现在我想在该类中引入我的方法,该方法应该在调用Read()方法的任何重载之前或之后执行。将根据用户输入在运行时决定调用Read()方法的哪个重载。

在这种情况下我需要做什么?如何在执行Read()方法的任何现有重载之前或之后执行我的方法?

2 个答案:

答案 0 :(得分:4)

您需要使用拦截器/ AoP。想到的第一个选项是PostSharp和Microsoft Unity。

在这个月MSDN杂志上有一篇关于此类事情的非常好的文章: http://msdn.microsoft.com/en-us/magazine/gg490353.aspx

答案 1 :(得分:-1)

拥有通用方法

public void Read<T>(T t) where t:ISomeCommonInterface
{
   Before();
   Read(t);
   After();
}
相关问题