我在使用时验证我的Structuremap配置时收到此错误
我的UnitTest中container.AssertConfigurationIsValid()
。
No Default Instance defined for PluginFamily MyComp.IMeasureRepository.
对于这个特定的接口,我没有任何依赖注入计划。所以我们可以让Stucturemap忽略这个接口并仍然通过我的UnitTest。
答案 0 :(得分:2)
使用StructureMap注册的其他内容可能需要IMeasureRepository
作为依赖项。 StructureMap需要知道如何满足该依赖。
答案 1 :(得分:1)
我认为接口是作为扫描的一部分注册的,而不是作为ctor参数注册的。扫描时,您可以选择性地包含或排除程序集,名称空间和类型。
你应该可以使用
ExcludeType<IMeasureRepository>()
在扫描配置中。
示例:
ObjectFactory.Initialize(c =>
{
c.Scan(scan =>
{
scan.TheCallingAssembly();
scan.WithDefaultConventions();
scan.ExcludeType<IMeasureRepository>();
});
});
有关详细信息,请参阅Scan documentation。