Visual Studio 2010 SDK 附带许多程序集,例如 Microsoft.VisualStudio.Text.Data 和 Microsoft.VisualStudio.Text.UI,它们只是存根。若要为 Visual Studio 编写扩展,请引用这些程序集,但将引用的“复制本地”和“精确版本”属性设置为 false。在 Visual Studio 中加载扩展时,引用将绑定到 Visual Studio 先前加载的这些程序集的内部实现。
我想提供一个新的 MEF 导出组件,它充当其他 MEF 包可以的 Visual Studio 服务[Import]
。要使用该服务,其他组件将需要引用我的包 - 但我更喜欢它们引用一个存根,这样我就可以对我的服务的内部实现进行更改,而不会破坏引用它的其他包。如何提供一个“存根”程序集,其中包含来自某个任意程序集的公开可见的 API 组件,这样如果您引用存根,它将在运行时与提供的实现无缝协作?