2011-05-07 35 views

回答

2

如何创建一个动态代理类 将实现接口 ITEST和两个 属性返回值?

看看嘲笑的图书馆,即犀牛嘲笑或Moq - 这正是这些允许你做的(然后一些) - 无需重新发明轮子。

由于这是使用反射来创建代理,所以与常规代码相比,它会非常慢 - 这一切都取决于该场景是否可接受。

0

至于perf,生成类型可能需要一点时间,但一旦拥有它,使其实例不应该比创建任何其他类的实例要慢。

如果您确实选择做自己的动态代理,您需要学习IL。反射器或类似的工具是做这件事的好方法。你可以写出你想要生成的代码,然后看看反射器中的IL

@BrokenGlass说,虽然有些图书馆可以做到这一点,但它有很好的学习体验:)