结构图。验证容器时忽略类型

发布于 2024-12-03 18:32:09 字数 261 浏览 1 评论 0原文

我在使用以下命令验证 Structuremap 配置时收到此错误 我的 UnitTest 中的 container.AssertConfigurationIsValid()

没有为 PluginFamily MyComp.IMeasureRepository 定义默认实例。

事实上,对于这个特定的接口,我没有任何依赖注入的计划。所以我们可以让 Stucturemap 忽略这个接口并仍然通过我的 UnitTest。

I am getting this error while verifying my Structuremap configuration using
container.AssertConfigurationIsValid() in my UnitTest.

No Default Instance defined for PluginFamily MyComp.IMeasureRepository.

Infact for this particular Interface i dont have any plans for dependency injection.So can we make the Stucturemap ignore this Interface and still pass my UnitTest.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夏の忆 2024-12-10 18:32:09

向 StructureMap 注册的其他内容可能会将 IMeasureRepository 作为依赖项。 StructureMap 需要知道如何满足该依赖性。

Something else that is registered with StructureMap likely takes an IMeasureRepository as a dependency. StructureMap needs to know how to satisfy that dependency.

瑕疵 2024-12-10 18:32:09

我认为该接口是作为扫描的一部分注册的,而不是作为 ctor 参数注册的。扫描时,您可以有选择地包含或排除程序集、命名空间和类型。

你应该能够使用
ExcludeType()
在扫描配置中。

示例:

ObjectFactory.Initialize(c =>
    {
        c.Scan(scan =>
            {
                scan.TheCallingAssembly();
                scan.WithDefaultConventions();
                scan.ExcludeType<IMeasureRepository>();
            });
    });

有关更多详细信息,请参阅扫描文档

I figure the interface is registered as part of a scan and not as a ctor argument. While scanning you can selectively include or exclude assemblies, namespaces and types.

You should be able to use
ExcludeType<IMeasureRepository>()
in the scanning configuration.

Example:

ObjectFactory.Initialize(c =>
    {
        c.Scan(scan =>
            {
                scan.TheCallingAssembly();
                scan.WithDefaultConventions();
                scan.ExcludeType<IMeasureRepository>();
            });
    });

See the Scan documentation for further details.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文