c# - StructureMap、扫描程序集和范围界定

标签 c# .net structuremap

如何在扫描程序集时添加一些范围? Google 似乎对“structuremap scan cacheby”不太满意:/

ObjectFactory.Configure(registry =>
{
    registry.Scan(x =>
    {
        x.AssemblyContainingType(typeof(IRepository<>));
        x.With<DefaultConventionScanner>();
    });
}

最佳答案

这里有一种方法可以让它与更新的 IRegistrationConvention API 一起工作:

public class SingletonConvention : IRegistrationConvention
{
    #region IRegistrationConvention Members

    public void Process(Type type, Registry registry)
    {
        registry.For(type).Singleton();
    }

    #endregion
}

可以这样使用:

container.Configure(registry =>
{
    registry.Scan(x =>
    {
        x.AssemblyContainingType<Foo>();
        x.AddAllTypesOf<IFoo>();
        x.Convention<SingletonConvention>();
    });
});

关于c# - StructureMap、扫描程序集和范围界定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/566815/

相关文章:

c# - grpc 服务器显示 "unimplemented service error"

c# - 在运行时将接口(interface)的不同实现注入(inject)命令

c# - StructureMap 注册表配置中类的调用方法

.net-3.5 - 支持 .Net 3.5 的 StructureMap 最新版本是什么?

c# - 每个方法的线程同步锁定

c# - 值不能为空。参数名称 : items (in Dropdown List) ASP. NET MVC5

c# - 插入不创建 Id?

c# - 获取 'excelcnv.exe' 位置

.net - 符号服务器说明

c# - Lucene 自定义分析器