这样做的目标是将构建版本设置为构建日期的时间戳。我使用一个Directory.Build.props文件来设置项目属性,其中有以下内容:
<PropertyGroup>
<Version>$([System.DateTime]::Now.Month).$([System.DateTime]::Now.Day).$([System.DateTime]::Now.Year)</Version>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
这工作得很好,但我想通过添加一天中经过的总秒数来提高时间戳的分辨率。
我可以通过执行以下操作相当轻松地获得该值$([System.DateTime]::Now.TimeOfDay.TotalSeconds),但这是一个 Double 并且版本需要 UInt16 - 1。
我想我可以通过执行以下操作转换为 UInt16 $([System.Convert]::ToUInt16( theAboveExpression )):
但是,双精度数可能太大,因此我需要先将其除以,但我根本不知道如何执行此操作。到目前为止,我最好的尝试就是盲目挥舞,因为我似乎找不到任何这样的例子:
$( $([System.DateTime]::Now.TimeOfDay.TotalSeconds) / 2 )
这个表达式无法被评估,我该如何实现呢?