我可以在C#中更改函数/方法定义吗? (定义,而不是覆盖)

时间:2018-07-29 19:24:43

标签: c#

有没有一种方法可以在C#中重新定义函数定义/方法?

情况:

修改别人的代码,他们有:

namespace TheirCode 
{
  public static class SomeUtility
  {
    public static void A(this Thing thing) 
    {
      //do something I want to change
    }
  }
}

我可以加载另一个允许我插入自己的代码的dll ...但是我想更改a_thing.A();的行为,我需要进行更改以影响所有Thing,而不仅仅是所有我可能会创建的NewThing个衍生版本。

我可以以某种方式重写方法定义吗?我可以用其他方式更改行为吗?

谢谢

1 个答案:

答案 0 :(得分:0)

哦,另一个问题有很多答案:

Dynamically replace the contents of a C# method?

和谐答案看起来很棒!

我不知道为什么我搜索时找不到它;为什么?也许这个问题的搜索词会帮助别人。