是否可以在运行时扩展或修改C#类的代码?
我的问题特别涉及猴子修补/鸭打洞或元对象编程(MOP),因为它发生在Groovy,Ruby等脚本语言中。
最佳答案
不可以,无法在.NET中执行此操作。您可以编写派生类并重写方法(如果它们是虚拟的),但是无法修改现有的类。试想一下,如果您要问的是可行的:您可以修改某些现有系统类(如System.String)的行为。
您还可以查看Extension methods,以向现有类添加功能。
关于dynamic - 用C#修补猴子,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4538017/