Хорошо, это довольно просто, но из того, что я видел ... вы можете использовать какой-то вид рабочего процесса Windows только для включения другой конфигурации в другую (что я отказываюсь делать).
Вот сделка:
MAINAPP.EXE Ссылки на гипотетическую LIBRARY.DLL.
MAINAPP.EXE имеет свой собственный MAINAPP.EXE.config.
Если вы добавите «значения конфигурации» в LIBRARY.DLL (тем самым создавая app.config в проекте LIBRARY.DLL), эти значения не доступны во время выполнения , даже если вы копируете приложение. Конфигурация в LIBRARY.DLL.config по правильному пути после сборки .
Причина вышеизложенного заключается в том, что даже библиотеки, на которые есть ссылки, будут считывать данные из конфигурации "mainapp.exe".
Пока "так хорошо". Теперь, когда вы добавляете ссылку на службу WCF, Visual Studio создает или заполняет ваш app.config привязками / конечными точками / и т. Д .; но это добавлено в проект, где вы добавили конфиг ссылки; следовательно, ваш Library.DLL.prj заканчивается красивым app.config, который не работает , потому что он никогда не читается и даже не копируется в выходной каталог. Теперь вы можете подумать, что вы можете щелкнуть правой кнопкой мыши по этому app.config и установить для параметра «всегда копировать» значение true. Забудь это. Это ничего не делает. (Вы можете Google для этого).
Итак, учитывая вышеприведенный странный сценарий, как обычный разработчик VS2008, работающий с проектом .NET 3.5, собирается управлять ссылками на службы WCF, которые он добавляет в свою DLL бизнес-уровня? Предполагается ли, что разработчик копирует и вставляет весь раздел от бесполезного app.config в своей DLL в файл Mainapp.exe.config каждый раз, когда происходит изменение в службах или каждый раз, когда он добавляет / удаляет один ?