У меня есть решение с несколькими проектами и несколькими разработчиками, каждый со своей средой (конечно).Чтобы управлять строками соединения между каждой средой, я создал несколько файлов app.config для каждой среды: app.config.dev, app.config.qa и т. Д.
Событие предварительной сборки просто копирует приложение.config. $ (имя_конфигурации) в app.config.Это событие предварительной сборки выполняется для каждого проекта в решении, и строка подключения включается в каждый (включая тестовый проект).
Когда я использую события предварительной сборки для управления файлами app.config, строка подключения не может быть найдена.Я могу заставить тесты нормально запускаться двумя способами: 1. Не используйте события предварительной сборки для управления выбором файла app.config и делайте это самостоятельно или 2. Если я проверяю app.config и делаю его доступным для записи,тогда события перед сборкой работают просто отлично.
Мы используем Visual Studio 2008 с VSS.
Я дошел до последних седых волос, есть идеи?Заранее спасибо!
РЕШЕНИЕ Обновите событие предварительной сборки, чтобы обеспечить возможность записи файла app.config, даже если он отмечен. Событие предварительной сборки используется ниже:
@echo off
attrib -r $(ProjectDir)app.config
if errorlevel 1 goto AttribFailed
copy $(ProjectDir)app.config.$(ConfigurationName) $(ProjectDir)app.config
goto BuildOK
:AttribFailed
echo Attrib -r Failed on $(ProjectDir)app.config
exit 1
:BuildOK
echo Copy Done