【问题标题】:How to generate type forwarding assembly for whole assembly?如何为整个程序集生成类型转发程序集?
【发布时间】:2025-11-29 05:10:01
【问题描述】:

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

谢谢。

【问题讨论】:

  • 您想要输入“后退”。呸。这对您的客户来说是一个小小的便利,您将为此付出高昂的代价。
  • @Hans 想详细说明一下吗?

标签: .net sdk proxy command-line-interface


【解决方案1】:

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

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

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

【讨论】: