C# NET核心如何导出CompositionHost?
我有下一个代码:C# NET核心如何导出CompositionHost?,c#,.net,.net-core,mef,.net-standard,C#,.net,.net Core,Mef,.net Standard,我有下一个代码: var configuration = new ContainerConfiguration().WithAssemblies(filteredLibraries, conventionBuilder); CompositionHost container = configuration.CreateContainer(); 下一个导出的类之一: [Export(typeof(IClass1))] public class Class1 : IClass1
var configuration = new ContainerConfiguration().WithAssemblies(filteredLibraries, conventionBuilder);
CompositionHost container = configuration.CreateContainer();
下一个导出的类之一:
[Export(typeof(IClass1))]
public class Class1 : IClass1
{
private readonly CompositionHost _host;
public Class1(CompositionHost host)
{
_host = host;
}
}
如何将此容器导出到自身?我认为主机不是作为
CompositionHost
导出的,而是作为CompositionContext
导出的。您还缺少[ImportingConstructor]
属性
因此,代码如下所示:
[Export(typeof(IClass1))]
public class Class1 : IClass1
{
private readonly CompositionContext _compositionContext;
[ImportingConstructor]
public Class1(CompositionContext compositionContext)
{
_compositionContext = compositionContext;
}
}