C# 公约的约束力

C# 公约的约束力,c#,ninject,C#,Ninject,我有一个程序集:Asbly1,它声明了这个接口: public interface IFieldFactory<T> { T createFieldObject(string fieldKey, object fieldValue); } 从assemblyAsbly1中,我想获得每个IFactory实现,并根据T泛型类型使用它们 我想我需要将IFactory绑定到它们的实现: public class FieldFactoryModule : Ninject.Module

我有一个程序集:
Asbly1
,它声明了这个接口:

public interface IFieldFactory<T>
{
    T createFieldObject(string fieldKey, object fieldValue);
}
从assembly
Asbly1
中,我想获得每个
IFactory
实现,并根据
T
泛型类型使用它们

我想我需要将
IFactory
绑定到它们的实现:

public class FieldFactoryModule : Ninject.Modules.NinjectModule
{
    public override void Load()
    {
        this.Bind(scanner => scanner.FromAssembliesMatching("*")
            .SelectAllClasses()
            .InheritedFrom(typeof(IFieldFactory<>))
            .BindToFactory()
            .Configure(c => c.InSingletonScope())
        );
    }
}
public class FieldFactoryModule : Ninject.Modules.NinjectModule
{
    public override void Load()
    {
        this.Bind(scanner => scanner.FromAssembliesMatching("*")
            .SelectAllClasses()
            .InheritedFrom(typeof(IFieldFactory<>))
            .BindToFactory()
            .Configure(c => c.InSingletonScope())
        );
    }
}
UIFramework.Proxy.Extension.IoC.NInjectKernelHolder.Instance.Kernel.Get(
    runtimeType,
    new Ninject.Parameters.Parameter("fieldKey", propertyName, true),
    new Ninject.Parameters.Parameter("fieldValue", assignedValue, true)
);