gpt4 book ai didi

c# - 如何获取 .csproj 文件中两个日期之间的差异?

转载 作者:行者123 更新时间:2023-12-04 12:19:16 25 4
gpt4 key购买 nike

我看到了一些 code like this , 在一个 csproj 文件中

$([System.DateTime]::UtcNow.ToString(mmff))
自动增加程序集版本:
<VersionSuffix>2.0.0.$([System.DateTime]::UtcNow.ToString(mmff))</VersionSuffix>
<AssemblyVersion Condition=" '$(VersionSuffix)' == '' ">0.0.0.1</AssemblyVersion>
那是什么语言/脚本?我如何使用它来获取两个日期之间的差异?
我试图做这样的事情:
<VersionMajor>2</VersionMajor>
<VersionMinor>1</VersionMinor>
<DaysFromLastRelease>$(([System.DateTime]::UtcNow - new [System.DateTime](2021,1,1))::TotalDays)</DaysFromLastRelease>
但它不起作用:)

最佳答案

.csproj文件基本上是MSBuild文件 (XML)。您所指的嵌入式语法称为 Property Function .
似乎可能不支持使用减号 ( - ) 的减法。有一个Subtract() Property Functions 中的属性函数.
也许这可以成为解决方案的基础。我没试过!

<Now>$([System.DateTime]::UtcNow.DayOfYear)</Now>

<January>$([System.DateTime]::new(2021,1,1)).DayOfYear</January>
<!-- or... (not sure about the below)
<January>$([System.DateTime]::Parse("1/1/2021").DayOfYear)</January>
-->

<DaysFromLastRelease>$([MSBuild]::Subtract($(Now), $(January)))</DaysFromLastRelease>
其他可能性
  • 通过编写 MSBuild 任务来计算日期差异
  • 调用您编写的简单程序
  • 以某种方式使用外部程序设置环境变量,然后在您的 .csproj 中引用该变量。
  • 关于c# - 如何获取 .csproj 文件中两个日期之间的差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67509357/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com