Включить ссылочный файл .config проекта.
Вместо исключая файл из ссылочного вывода сборки, я хочу добавить его!
У меня есть проект консольного приложения (BuildTest1), который ссылается на проект библиотеки второго класса (ClassLibrary1). Решение Visual Studio выглядит следующим образом:
![Solution layout]()
У меня есть проект библиотеки классов, который имеет app.config. Я хочу, чтобы этот файл .config был скопирован в выходной вывод проекта, как и файлы .dll и .pdb. Конфигурационный файл для библиотеки классов копируется в каталог вывода библиотеки классов как "ClassLibrary1.dll.config"
Я попытался добавить это в файл .csproj проекта .exe, но он, похоже, не имеет никакого значения:
<PropertyGroup>
<AllowedReferenceRelatedFileExtensions>
.pdb;
.xml;
.config
</AllowedReferenceRelatedFileExtensions>
</PropertyGroup>
Ответы
Ответ 1
Я был так близок... Я отследил это до задачи MSBuild ResolveAssemblyReference, которая вызывается из целевого объекта ResolveAssemblyReferences в Microsoft.Common. цели. Это то, что заполняет элемент ReferenceCopyLocalPaths.
Поэтому, глядя на образец файлов, которые он сопоставлял, я обнаружил, что расширение файла .dll.config(а не только .config) сделало трюк:
<PropertyGroup>
<AllowedReferenceRelatedFileExtensions>
.pdb;
.xml;
.dll.config
</AllowedReferenceRelatedFileExtensions>
</PropertyGroup>