.NET Platform Conditional Tags in .csproj
In addition to symbols you can use in code, one can also use TFMs in .csproj
files for instance to decide which references to use depending on target framework, like so:
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard1.4'">
<PackageReference Include="System.Reflection.Emit.Lightweight" Version="4.7.0" />
</ItemGroup>
Here is the list of all the TFMs known today:
Target Framework | TFM |
---|---|
.NET 5 (and .NET Core) | netcoreapp1.0netcoreapp1.1netcoreapp2.0netcoreapp2.1netcoreapp2.2netcoreapp3.0netcoreapp3.1net5.0* |
.NET Standard | netstandard1.0netstandard1.1netstandard1.2netstandard1.3netstandard1.4netstandard1.5netstandard1.6netstandard2.0netstandard2.1 |
.NET Framework | net11net20net35net40net403net45net451net452net46net461net462net47net471net472net48 |
Windows Store | netcore [netcore45]netcore45 [win] [win8]netcore451 [win81] |
.NET Micro Framework | netmf |
Silverlight | sl4sl5 |
Windows Phone | wp [wp7]wp7wp75wp8wp81wpa81 |
Universal Windows Platform | uap [uap10.0]uap10.0 [win10] [netcore50] |
Thanks! You can always email me or use contact form for more questions/comments etc.