В настоящее время я работаю над проектом решения шаблонов для разработки расширяемых служб Windows.Не удается найти ConnectionString для NUnit в Connections.config
В моей службы Windows C# проекта (ServiceTemplate) У меня есть файл App.config, который содержит следующее:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog"/>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<connectionStrings configSource="Connections.config"/>
<!-- NLog Settings -->
<nlog>
<targets>
<target name="programlog" type="File" fileName="${basedir}/Logs/program-logs/program-log${shortdate}.log" layout="${logger} - [${longdate}] [${level}] -> ${message} (${callsite} @ line ${callsite-linenumber})" />
<target name="servicelog" type="File" fileName="${basedir}/Logs/service-logs/service-log${shortdate}.log" layout="${logger} - [${longdate}] [${level}] -> ${message} (${callsite} @ line ${callsite-linenumber})" />
<target name="tasklog" type="File" fileName="${basedir}/Logs/task-logs/task-log${shortdate}.log" layout="${logger} - [${longdate}] [${level}] -> ${message} (${callsite} @ line ${callsite-linenumber})" />
<target name="checkinlog" type="File" fileName="${basedir}/Logs/checkin-logs/checkin-log${shortdate}.log" layout="${logger} - [${longdate}] [${level}] -> ${message} (${callsite} @ line ${callsite-linenumber})" />
<target name="databaselog" type="File" fileName="${basedir}/Logs/database-logs/database-log${shortdate}.log" layout="${logger} - [${longdate}] [${level}] -> ${message} (${callsite} @ line ${callsite-linenumber})" />
<target name="unittestlog" type="File" fileName="${basedir}/Logs/unittest-logs/unittest-log${shortdate}.log" layout="${logger} - [${longdate}] [${level}] -> ${message} (${callsite} @ line ${callsite-linenumber})" />
</targets>
<rules>
<logger name="ProgramLog" writeTo="programlog"/>
<logger name="ServiceLog" writeTo="servicelog"/>
<logger name="TaskLog" writeTo="tasklog"/>
<logger name="CheckInLog" writeTo="checkinlog"/>
<logger name="DatabaseLog" writeTo="databaselog"/>
<logger name="UnitTestLog" writeTo="unittestlog" />
</rules>
</nlog>
</configuration>
У меня также есть два отдельных C# проектов библиотеки (ServiceTemplateDAL и ServiceTemplateLibrary) в пределах того же решения, содержит мои модели и DAL и где большая часть работы выполняется.
Я создал четвертый проект в моем решении под названием ServiceTemplateUnitTesting, который я использую для написания набора модульных тестов с помощью NUnit. Моя проблема: NUnit не может найти файл Connections.config.
Я сделал несколько поисковых запросов и знаю, что вам нужно переименовать конфигурационный файл в имя сборки. Поэтому я попытался скопировать файл ServiceTemplate.exe.config и поместить его в bin/Debug/из проекта ServiceTemplateUnitTesting под названием ServiceTemplateUnitTesting.dll.config и запустить тесты, но он по-прежнему не может читать файл connections.config.
Возможно ли, что NUnit использует несколько файлов .config, когда они разделены таким образом? Причина разделения заключается в том, что у меня нет списка строк подключения с паролями и конфиденциальными данными в исходном управлении.
Спасибо!