Прежде всего, извините, может быть, дублированный вопрос, но я новый и в то же время взволнованный проектом Castle Windsor. Я переработал службу веб-API для использования преимуществ DI и UnitTesting. Структура проекта: API (Web Api)>WcfServiceWrapper (проект библиотеки) >> (IAuthorizationService, IBussinesProcessService, IClientService
... (Список услуг)). Все ссылки на службы имеют конфигурацию в файле конфигурации.Как зарегистрировать все реализации WCF в Castle Windsor
В WcfServiceWrapper я работал с экс .:
using(IAuthorizationService serviceClient = new AuthorizationServiceClient()){
}
Теперь с замком Я хочу, чтобы все Ссылочные услуги (IAuthorizationService, IBussinesProcessService, IClientService ...
) использовать их реализации (AuthorizationServiceClient, BussinesProcessServiceClient, ClientServiceClient ...
)
конфигурации Замок находится в проекте API. Когда я делаю это:
container.Register(Classes.FromAssemblyNamed("WcfServiceWrapper").Pick().WithServiceAllInterfaces());
во время выполнения он говорит мне, что ComponentActivator: не удалось создать экземпляр AuthorizationServiceClient.
Я думал, что это невозможно прочитать привязку Конфигурации из файла конфигурации, или я не знаю.
Можете ли вы рассказать мне, как я могу зарегистрировать эти компоненты?
У вас есть более подробное сообщение об ошибке? Имеет ли какая-либо из ваших зарегистрированных реализаций какой-либо интерфейс в своем конструкторе, который не имеет реализации? – Andre