Если вы хотите полностью обработать это в Visual Studio, VS2010 предлагает преобразования web.config , которые могут решить вашу проблему.
В двух словах, создайте конфигурацию сборки (в VS выберите Build | Configuration Manager ...) для каждого сайта. Добавьте преобразование web.config для каждого клиента, в котором указаны только различия, необходимые для каждого приложения.
Я использую это для разграничения конфигураций разработки, промежуточного размещения и выпуска - каждое преобразование корректирует строку подключения, настройки приложения и т. Д. - и оно работает достаточно хорошо как в Visual Studio, так и при развертывании через MSBuild.
Также обратите внимание, что настройки web.config наследуются приложениями IIS. Итак, если у вас есть корневой сайт
/root
и клиентские приложения
/root/client1
/root/client2
...
Вы можете разместить параметры конфигурации клиента в файле web.config в каждой папке клиента, а глобальные параметры файла web.config - в корневой папке.