В asp. net web api, используя Unity
, я могу зарегистрировать свои сервисы в UnityConfig.cs
:
public static class UnityConfig
{
public static void RegisterComponents()
{
var container = new UnityContainer();
container.RegisterType<ITestService, TestService>();
//above code needs to be read from config file
GlobalConfiguration.Configuration.DependencyResolver = new UnityDependencyResolver(container);
}
}
Теперь у меня есть файл конфигурации (находится в root проекта), где хранятся все эти типы для регистрации:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Microsoft.Practices.Unity.Configuration"/>
</configSections>
<unity>
<alias alias="ITestService" type="IMyServices.ITestService, IMyServices" />
<container>
<register type="ITestService" mapTo="MyServices.TestService,MyServices" />
</container>
</unity>
</configuration>
Как я могу получить контейнер из этого файла?
Ниже приведен аналогичный вопрос, но он не был решен: ASP. NET - Unity - чтение раздела конфигурации из внешнего файла конфигурации