A $ перед одинарными кавычками «...\n ...» следующим образом, однако двойные кавычки не работают.
$ echo $'Hello\nWorld'
Hello
World
$ echo $"Hello\nWorld"
Hello\nWorld
Другое решение состоит в том, чтобы просто добавить конфигурационный файл во всех Ваших проектах как ссылка вместо того, чтобы на самом деле копировать файл в Ваши проекты. Затем установите "Действие Сборки" файла к "Содержанию" и "Копии для Вывода Каталога", чтобы "Скопировать, если более новый" и когда Вы компилируете проект, у Вас будет файл в выходном каталоге.
Для добавления файла как ссылки в диалоговом окне "Add Existing Item" существует кнопка Add с выпадающим. Выберите "Add as link" из выпадающего на кнопке Add для завершения процесса.
Кажется, что это, это - способ, которым это. configSource должен быть в той же папке или глубже.
Вы могли , хотя я не уверен, что Вы должны , использовать NTFS hardlink. [безумная усмешка]
Решение, которое я нашел работавшим лучше всего, состояло в том, чтобы поместить "общие" файлы конфигурации в центральные файлы и затем использовать событие перед сборкой в Visual Studio для копирования их в относительную папку каждого проекта, для которого был нужен он.
Можно загрузить конфигурацию из произвольного местоположения, , но это не будет доступно через статические свойства ConfigurationManager:
Configuration myConfig = ConfigurationManager.OpenExeConfiguration(path)
(Существует перегрузка, которая позволяет multuple файлам быть указанными, поддерживать default/user-roaming/user-local иерархию.)
Потеря статических свойств означает все потребности кода знать о другой конфигурации.
Можно поместить обе настройки в machine.config, и затем они доступны для всего Вы приложения на сервере.
В appSettings вы можете использовать file = вместо configSource =
У меня были серьезные проблемы с этой проблемой, но я нашел здесь хорошее решение: тестовый запуск с внешней конфигурацией
(Вы можете направить тестовый запуск для копирования файлов и каталогов в каталог тестового запуска путем редактирования файла .testrunconfig.)
Хотя почему проект типа модульного теста может получить настройки конфигурации из своего собственного app.config, но не сможет загружать указанные файлы конфигурации, такие как нормальный app.config меня немного сбивает с толку. Я бы назвал это ошибкой, потому что вы ожидаете, что тестовый проект app.config будет вести себя так же, как ведет себя app.config приложения, но это не так.