首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从DryIoc中的注册中排除类型

从DryIoc中的注册中排除类型
EN

Stack Overflow用户
提问于 2018-08-12 11:10:32
回答 1查看 150关注 0票数 1

我如何告诉DryIoc永远不要注册特定类型?

我尝试在serviceTypeCondition中使用RegisterMany参数:

代码语言:javascript
复制
registrator.RegisterMany(new[] { typeof(DemoClass).GetAssembly() }, 
    serviceTypeCondition: (type) =>
    {
        var name = type.Name;
        return name != "SkipMyName";
    }

但是看起来DryIoc仍然试图读取/评估"SkipMyName“类。如果它不是为DI设计的-我从DryIoc得到一个异常(假设类有两个公共构造函数)。通过设计-我不需要它在DI中注册。

那么,是否有一种方法可以让DryIoc排除被注册的类型?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-12 13:13:08

筛选实现类型,而不是派生服务类型:

代码语言:javascript
复制
var implTypes = typeof(DemoClass)
    .GetAssembly()
    .GetLoadedTypes()
    .Where(t = t.Name != "SkipMyName");

registrator.RegisterMany(implTypes);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51808217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档