2011-03-28 30 views
2

我有一种情况,我想要生成一个包含整个主机程序集类型转发的单个DLL。这个想法是提供一个SDK,其中一个DLL包含最终产品程序集中每个类型和方法的'空代理'。我的问题是:是否有可能以某种方式快速生成这些程序集?我的意思是,所有正确的类型和接口?如何为整个装配生成类型转发组件?

谢谢。

+0

你想要键入'后退'。呸。这对您的客户来说是一个小小的便利,您将为此付出沉重的代价。 – 2011-03-28 14:27:11

+1

@Hans谨慎讲解? – 2011-03-29 07:24:46

回答

1

您可以使用TypeForwardedToAttribute将类型从一个程序集转发到另一个程序集。

现在,要动态生成将多种类型转发到另一个程序集的程序集,可以使用Reflection.EmitMono.Cecil

使用这些库,您可以读取目标程序集的公共类型,并生成一个程序集,其中包含每个类型的TypeForwardedToAttribute