Добрый день,
Я пишу DLL, которая использует WCF для вызова веб-сервисов. Обычно это довольно просто: я настраиваю конечную точку в файле .config и покончу с этим. Однако в этом случае DLL может быть вызвана в одном из нескольких контекстов, и в зависимости от контекста конечная точка может измениться. Поведение DLL остается неизменным.
Я бы хотел использовать одну копию библиотеки DLL, но у меня возникли проблемы с выяснением, как заставить это работать. Я мог бы установить несколько экземпляров конечной точки и сделать оператор case, но я ищу что-то более расширяемое. Я подумал о нескольких вещах.
- Изменение конечной точки на лету; У меня есть возможность передавать данные конфигурации в DLL, и я могу передать конечную точку. Однако это позволяет мне изменять конечную точку, а не протокол или что-либо еще.
- Хранение нескольких файлов конфигурации и передача пути к соответствующему файлу конфигурации. Это кажется очень грязным, и я не уверен, как это будет работать.
Я надеюсь получить некоторые другие идеи о том, как я мог бы справиться с этой ситуацией. Я не могу придумать что-то элегантное.
Спасибо!