有没有一种方法可以在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
个衍生版本。
我可以以某种方式重写方法定义吗?我可以用其他方式更改行为吗?
谢谢
答案 0 :(得分:0)
哦,另一个问题有很多答案:
Dynamically replace the contents of a C# method?
和谐答案看起来很棒!
我不知道为什么我搜索时找不到它;为什么?也许这个问题的搜索词会帮助别人。