如何将$(TargetDir)存储在变量中

时间:2017-03-25 18:06:45

标签: c# macros t4

我试图将目标目录存储在变量中,但是当我执行path.Combine时,它只是忽略了我的参数。

this._outputPath = "$(TargetDir)../../"
block.Name = "/Contracts/TestDTO";
var filePath = Path.Combine(this._outputPath, block.Name);

当我尝试这个时,它忽略了输出路径,可能是因为它没有正确解析。

注意,这是从T4生成器运行的,这意味着应用程序当前目录与我想要的不同。

  

" C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE"

1 个答案:

答案 0 :(得分:0)

所以似乎path.combine不喜欢使用混合斜杠。

我通过从第二条路径中移除/来修复此问题

this._outputPath = "$(TargetDir)../../"
block.Name = "Contracts/TestDTO";
var filePath = Path.Combine(this._outputPath, block.Name);