【发布时间】:2019-06-08 20:03:21
【问题描述】:
我有一个 T4 模板文件,它包含在文件系统不同深度级别的不同项目和解决方案中的许多其他 T4 模板中。在汇编指令中,我不能使用像 $(ProjectDir) 或 $(SolutionDir) 这样的宏。我需要使用相对于 T4 文件本身的路径。
我该怎么做?
【问题讨论】:
-
您可以创建一个 T4 来探测程序集的绝对路径,并在程序集指令中使用这些路径生成另一个 T4。
我有一个 T4 模板文件,它包含在文件系统不同深度级别的不同项目和解决方案中的许多其他 T4 模板中。在汇编指令中,我不能使用像 $(ProjectDir) 或 $(SolutionDir) 这样的宏。我需要使用相对于 T4 文件本身的路径。
我该怎么做?
【问题讨论】:
您可能需要详细说明,因为 $(SolutionDir) 可以像以下代码一样正常工作:
<#@ assembly name="$(SolutionDir)MyFile.dll"#>
但它在 TextTransform.exe 中不起作用。有workarounds for TextTransform.exe 虽然使用 PowerShell。
【讨论】: