我有三个装配。主要可执行文件,公共库和扩展。在扩展中,我需要实现来自公共程序集的某个接口,以便将类作为服务注册到静态Kernel
类中。
唯一的问题是,我无法访问实现该接口所需的某些类型。例如,接口A
的方法DoWork()
具有返回类型B
。扩展程序集在其引用中没有B
类型,并且无法添加。
有没有办法实现接口,让方法抛出NotImplementedException
并扩展程序集编译?
注意,主程序集需要引用扩展名才能注册它,所以我不能引用扩展中的主程序集并在主程序中声明类型。
答案 0 :(得分:1)
不可能做这样的事情。您必须实现接口的所有成员,为此,您需要引用这些成员的所有返回类型和参数类型。
注意,主程序集需要引用扩展名 注册它,所以我不能引用扩展中的主程序集 并在主要类型中声明类型。
如何在扩展程序集中添加对外部库的引用?我想这是你在这里唯一的可能性。我假设扩展将与主程序集一起部署。由于没有外部库,主程序集无法正常运行,您将拥有所需的一切。