我将一个Nuget包库中的接口拆分为一个更简单的基接口(没有原始的一个属性),并使原始派生自新的基接口。
实例化……
从另一个接口继承的接口成员不等同于在接口本身中定义的成员。因此,将成员移动到基接口并从中继承,是一个重大变化。要向下兼容,接口的成员也必须自己定义为“new”(在C#中)。
我用一个简单的测试程序证实了这一点,用原始的单一界面引用了不同版本的DLL,拆分了另一个与拆分和重复的“新”成员。所以这不是MEF的问题。
不幸的是,这个问题只发生在运行时,在已经构建了nuget包的发布之后。