Open
Description
The T4.BuildTools package seems to compile t4 files against a different version of .net depending on if the build is run from visual studio vs dotnet build.
My Project file looks like:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<TransformOnBuild>True</TransformOnBuild>
<TransformOutOfDateOnly>False</TransformOutOfDateOnly>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="T4.BuildTools" Version="3.0.0-preview-0052-g5d0f76c785" />
</ItemGroup>
<ItemGroup>
<T4Transform Include="Program.tt"/>
</ItemGroup>
</Project>
Program.tt looks like:
<#@ output extension=".cs" #>
<#
//var a = 8;
//var str = $"Hello Mono T4. A={a}";
var str = System.Environment.Version.ToString();
#>
Console.WriteLine("<#=str#>");
When built and run from visual studio it outputs "4.0.30319.42000"
When built and run via dotnet run it outputs "8.0.5"
newer C# features like interpolation also dont work when run within visual studio.
Metadata
Metadata
Assignees
Labels
No labels
Activity