我正在开发一个需要使用公共服务定位器 ( http://commonservicelocator.codeplex.com/ ) 来提供通用 IOC 支持的库,这样我们就不会与任何消费者发生冲突。显然我不想在我的项目中直接引用 IOC 框架,但我不确定如何注释这些部分,以便它们可以被各种框架找到。例如,MEF 通常通过使用 Export 注释查找类来工作,而 LinFu 通过查找具有 Implements 注释的类来工作。这两个注释都是在它们各自的项目中定义的,要求我同时引用它们。
我怎样才能避免添加所有这些类并多次注释我的所有类?它当然不能很好地适应新的 IOC 框架,因为每个新框架的注释都需要重新构建。