Asp.net mvc 统一并不能解决依赖关系

Asp.net mvc 统一并不能解决依赖关系,asp.net-mvc,dependency-injection,unity-container,Asp.net Mvc,Dependency Injection,Unity Container,我使用统一与统一。注册类型和依赖项解析器的类如下所示: public static class UnityConfig { public static void RegisterComponents() { var container = new UnityContainer(); container .RegisterType<ILogger, Nlogger>() .Register

我使用统一与统一。注册类型和依赖项解析器的类如下所示:

public static class UnityConfig
{
    public static void RegisterComponents()
    {
        var container = new UnityContainer();

        container
            .RegisterType<ILogger, Nlogger>()
            .RegisterType<IDataAccessLayer, SqlDataAccessLayer>()
            .RegisterType<IEventBusiness, EventBusiness>();

        DependencyResolver.SetResolver(new UnityDependencyResolver(container));

    }
}
在我的一个控制器中,我有如下属性:

[Dependency]
public IEventBusiness EventBusiness { get; set; }

我希望这个属性由Unity自动设置,但它总是空的。有人能帮我找出我做错了什么吗?

谢谢你们的帮助。我删除了Unity.MVC5并安装了Unity plus Unity.Bootstrapper。现在一切正常。我跟随本文解决了这个问题:

您还可以尝试在注册时提供
InjectionProperty
配置。或者,为什么不尝试构造函数注入呢?您是否将控制器注册到容器中?@TylerOhlsen,不,我不注册控制器。我必须这样做吗?在控制器内部,当我检查DependencyResolver.Current时,它为我提供了UnityContainer的正确实例以及所有注册的类型。
[Dependency]
public IEventBusiness EventBusiness { get; set; }