【问题标题】:How do I store the $(TargetDir) in a variable如何将 $(TargetDir) 存储在变量中
【发布时间】:2017-03-25 18:06:44
【问题描述】:

我正在尝试将目标目录存储在一个变量中,但是当我执行 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”

【问题讨论】:

  • 你必须将组合的结果存储在某个地方,Path.Combine 不会修改它的参数而是返回一个结果。
  • 抱歉,这是我存储的伪代码

标签: c# macros t4


【解决方案1】:

所以看来 path.combine 不喜欢使用混合斜线。

我通过从第二条路径中删除 / 来解决此问题

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

【讨论】:

    猜你喜欢
    • 2014-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-14
    • 2020-02-03
    • 2011-07-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多