Код: Выделить всё
/SolutionFolder
/SolutionFolder/Project1
/SolutionFolder/Project1/Project1.csproj
/SolutionFolder/Project2
/SolutionFolder/Project2/Project2.csproj
/SolutionFolder/ClassLib1
/SolutionFolder/ClassLib1/ClassLib1.csproj
Например:
Код: Выделить всё
#if Foo
// do something
#elif Bar
// do something else
#endif
На самом деле у нас есть работающий решение, определив Driectory.Build.props внутри нашей папки решения, которая выглядит следующим образом:
Код: Выделить всё
/SolutionFolder/Directory.Build.props
Код: Выделить всё
Foo
Код: Выделить всё
net8.0
enable
enable
$(DefineConstants);$(CustomConstant)
Цель состоит в том, чтобы эта константа была определена внутри родительского проекта и унаследована библиотекой классов. Но ничего из того, что я пробовал, похоже, не работает.
ClassLib1 не видит никаких свойств, определенных в родительском проекте.
Добавление свойства в ProjectReference тоже не работает:< /p>
Код: Выделить всё
Foo
Код: Выделить всё
У кого-нибудь есть идеи? Я потратил много времени на поиск решения, похоже, никому не нужно делать что-то подобное, даже если мне кажется, что это довольно распространенный сценарий!
Подробнее здесь: https://stackoverflow.com/questions/791 ... nt-project
Мобильная версия