Я буду использовать решение Ричарда, хотя оно кажется намного чище.

я есть служба Windows, которая использует систему плагинов. Я использую следующий код в базовом классе плагина, чтобы обеспечить отдельную конфигурацию для каждой библиотеки DLL (поэтому он будет читать изplugin.dll.config):

string dllPath = Assembly.GetCallingAssembly().Location;
return ConfigurationManager.OpenExeConfiguration(dllPath);

Эти плагины должны вызывать сервисы WCF, поэтому я сталкиваюсь с проблемойnew ChannelFactory<>("endPointName") только ищет в App.config размещенного приложения конфигурацию конечной точки.

Есть ли способ просто сказать ChannelFactory искать в другом файле конфигурации или как-то внедрить мойConfiguration объект?

Единственный способ, которым я могу придумать, - это вручную создать объект EndPoint и Binding из значений, считанных изplugin.dll.config и передать их одному изChannelFactory<> Перегрузки. Это действительно похоже на воссоздание колеса, и это может сильно испортить конечную точку, в которой интенсивно используются конфигурации поведения и привязки.Возможно, есть способ легко создать объекты EndPoint и Binding, передав ему раздел конфигурации?

Ответы на вопрос(3)

Ваш ответ на вопрос