Я создал проект по шаблону Worker Service. Мне нужно чтобы проект поддерживал Windows и Linux. Я создал папку Platforms и туда поместил Linux и Windows папки. Они нужны чтобы там хранился код специфильный для данной платформы.
Пока имею следующие настрйоки проекта:
<PropertyGroup>
<TargetFrameworks>net9.0;net9.0-windows10.0.19041.0</TargetFrameworks>
<RuntimeIdentifiers>win-x64;linux-x64</RuntimeIdentifiers>
<!--other...-->
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0-windows10.0.19041.0'">
<DefineConstants>WINDOWS</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0'">
<DefineConstants>LINUX</DefineConstants>
</PropertyGroup>
При этом не знаю как разделить проект на два фреймворка чтобы выбирать из раскрывающегося спиcка нужный фреймворк и тем самым выбирались директивы предпроцессора и соответсвенно путь для билда. И чтобы при переходи в соотвествующую папку выбирался нужный проект (По сути как в MAUI).
И как при этом устанавливать NuGet пакеты для платформы?
UPD. При перезапуске VS раскрывающий спиcок фреймворков появился. Но теперь как сделать чтобы при открытии файла например Platfoms\Windows\Test.cs выбирался соответсвующий фреймворк?