在.net 6.0环境下使用T4模板生成代码报错
错误 正在运行转换: System.IO.FileNotFoundException: 未能加载文件或程序集“System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。系统找不到指定的文件。 文件名:“System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” 在 Microsoft.VisualStudio.TextTemplatingDF348CB3FB09E8E166E437124F9F88342823FF1D21BC7B73048E47A611D6DC38AD43D38B26E23A35527758646C26C0D989C154CDCD9B21719CC1A062236A2570.GeneratedTextTransformation.TransformText() 在 Microsoft.VisualStudio.TextTemplating.TransformationRunner.PerformTransformation() 警告: 程序集绑定日志记录被关闭。 要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD)设置为 1。 注意: 会有一些与程序集绑定失败日志记录关联的性能损失。 要关闭此功能,请移除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。 Ark.Y2020.DBModel D:\myCode\其他项目\Ark2020\Ark.Y2020.DBModel\BCBenefitConsume.tt
解决办法,在.csproj项目文件中为项目添加.net framework目标,如下。
<PropertyGroup> <TargetFrameworks>net4.5.2;net6.0-windows</TargetFrameworks> <UseWPF>true</UseWPF> <ImplicitUsings>enable</ImplicitUsings> <Nullable>enable</Nullable> <LangVersion>Latest</LangVersion> </PropertyGroup>
设置 <LangVersion>Latest</LangVersion> 可解决.net4.5.2 环境中 C#语言版本低的问题。
标签:t4,程序,system,System,6.0,日志,runtime,Microsoft,模板 From: https://www.cnblogs.com/PotatoLemon/p/18324549