У меня довольно сложное решение, содержащее 10 проектов, кроме тестовых проектов. Это сеть распределенных приложений & услуги, которые обмениваются данными с помощью удаленного доступа; поэтому наличие надлежащих ссылочных сборок (& версий) имеет решающее значение. Вот почему я хочу, чтобы все это было скомпилировано и обмолочено в ONE build.Постройте полное решение, но добавьте глобальные условные символы компиляции только для одного проекта.
Одним из приложений является демонстрационный/аналитический инструмент, который выполняет подпроцесс другого - гораздо большего - приложения на основе ввода пользователя и отображает результаты; Таким образом, у инженеров есть инструмент, который поможет настроить их настройки для «больших вычислений». Очевидно, что подпроцесс содержится в другой сборке, и большая часть тэ результатов, представленных инженерами генерируется
#if ENABLE_TRACE_MATCHING
Trace.WriteLine("Some engineering output");
#endif
Моя проблема заключается в том, что условная компиляция Символы в настройках проекта ограничиваются сборкой этого проекта, и сделать не распространяются по ссылочным сборкам. Как я могу настроить свою сборку таким образом, что все проекты будут построены без ENABLE_TRACE_MATCHING определяется для одной отладки/анализ-приложения проекта, в котором все упомянутые проекты/сборки должны быть скомпилированы с ENABLE_TRACE_MATCHING быть определены
кромеЯ также не могу заменить #if ENABLE_TRACE_MATCHING на #if DEBUG, так как это позволило бы получить много разных результатов, которые наши инженеры не знали бы, как обращаться.
Заранее спасибо.
PS: Если вы думаете, что мой код пахнет, то я согласен. Дополнительно: в основном это не мой код;)
Я забыл упомянуть: Это все C# и .NET 3.5 – user588939