如何使用Unity依赖注入配置限制?

时间:2017-02-20 15:11:01

标签: c# asp.net dependency-injection unity-container

我在ASP.Net Web应用程序中使用Unity进行依赖注入。

假设我创建了一个名为MyService的简单服务,实现了IMyService。我会在UnityContainer中配置它:

...
container.RegisterType<IMyService, MyService>();

GlobalConfiguration.Configuration.DependencyResolver = 
    new UnityHierarchicalDependencyResolver(container);

我现在可以使用该服务:

namespace MyApp
{
    public class A
    {
       private readonly IMyService _myService;

       public A(IMyService myService)
       {
          _myService = myService;
       }

       ...
    }
}

这很好用!

但是如果我想限制哪些类允许注入MyService呢?例如,如果:

  • 我只想让它由A类注入,而不是B类。

  • 我只想将它注入属于命名空间MyApp的类中?

可以这样做吗?

0 个答案:

没有答案