如何组合PolicyInjection.Create和UnityContainer.RegisterType

本文关键字:Create UnityContainer RegisterType PolicyInjection 何组合 组合 | 更新日期: 2023-09-27 18:00:35

我的web应用程序使用UnityContainer。

我想添加策略注入。

我怎样才能同时使用它们?

意思是谁应该负责类型注册?

政策部分:

    public ActionResult Index()
    {
        var model = PolicyInjection.Create<TestModel, ITestModel>();
        ViewBag.Message = model.TestLog();
        return View();
    }

统一:

 IUnityContainer container = defaultContainer;
                //registering Unity for MVC
                DependencyResolver.SetResolver(new UnityDependencyResolver(container));
                //registering Unity for web API
                //  GlobalConfiguration.Configuration.DependencyResolver = new Unity.WebApi.UnityDependencyResolver(container);
                #region managers
                container.RegisterType<ISettingsManager, SettingsManager>();
                container.RegisterType<IMamDataManager, MamDataManager>();
                container.RegisterType<IAppsDataManager, AppsDataManager>();
                #endregion

如何组合PolicyInjection.Create和UnityContainer.RegisterType

Unity 2.0集成了策略注入。您不必再使用静态PolicyInjection类了。


更新

Dino Esposito的一篇文章中包含了一些很好的例子。