C# 如何组合PolicyInjection.Create和UnityContainer.RegisterType?
我的web应用程序使用UnityContainer 我想增加政策注入 我怎样才能同时使用它们呢 也就是说谁应该负责类型注册 政策组:C# 如何组合PolicyInjection.Create和UnityContainer.RegisterType?,c#,.net,asp.net-mvc,dependency-injection,enterprise-library,C#,.net,Asp.net Mvc,Dependency Injection,Enterprise Library,我的web应用程序使用UnityContainer 我想增加政策注入 我怎样才能同时使用它们呢 也就是说谁应该负责类型注册 政策组: public ActionResult Index() { var model = PolicyInjection.Create<TestModel, ITestModel>(); ViewBag.Message = model.TestLog(); return View();
public ActionResult Index()
{
var model = PolicyInjection.Create<TestModel, ITestModel>();
ViewBag.Message = model.TestLog();
return View();
}
public ActionResult Index()
{
var model=PolicyInjection.Create();
ViewBag.Message=model.TestLog();
返回视图();
}
团结:
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
IUnityContainer container=defaultContainer;
//为MVC注册Unity
SetResolver(新UnitedDependencyResolver(容器));
//为web API注册Unity
//GlobalConfiguration.Configuration.DependencyResolver=新的Unity.WebApi.UnityDependencyResolver(容器);
#区域经理
container.RegisterType();
container.RegisterType();
container.RegisterType();
#端区
。您不必再使用静态PolicyInjection
类
更新
有一篇文章包含了一些很好的例子。@EladBenda在我的更新中链接的文章包含了一些例子。
//策略注入
需要吗?什么是Fluent code
?@EladBenda您需要将拦截
扩展添加到容器中,将策略注入行为
和拦截
添加到要拦截的每种类型的注册中。流畅的代码表示配置样式。您可以在本文后面看到一个关于如何使用配置文件的示例。