结构图注册

StructureMap registration

想象界面

关联存储库:

我正在尝试使用结构图进行通用注册,以在一个注册表中注册我的所有存储库,以使用 IFooRepository 调用我的 IoC

public class DataRegistry : Registry
    {
        public DataRegistry()
        {
            Scan(x =>
            {
                x.AssemblyContainingType<RepositoryBase>();
                x.IncludeNamespaceContainingType<RepositoryBase>();
                //Todo Register EndWith Repository as ImplementedInterface
            });
        }
    }

这将使您能够将 IFooRepository 解析为 FooRepository 的实例:

Scan(x =>
{
    x.AssemblyContainingType<RepositoryBase>();
    x.IncludeNamespaceContainingType<RepositoryBase>();
    x.WithDefaultConventions();

});

WithDefaultConventions 连接所有具有相同名称的 类 接口(I 除外)。 SingleImplementationsOfInterface 也适用于您的情况。