【发布时间】:2022-02-21 06:42:32
【问题描述】:
经过挖掘和搜索。我发现AssemblyVersion 只接受System.Int16 这意味着它不能超过65,535 的值。
我需要的输出*.DLL 程序集版本样式(YYYY.M.D.HHMMSS)(2022.02.20.060920)
实际上第二部分第一个零会省略060920 是60920,如果小时是15 = 3 PM,应该是150920 = 6 位数。不起作用。我想有一种方法 DateTime.Now.Ticks 但它给出了 System.Int64 并且永远不会适用于 Version。
请问有没有 5 位 小时/分钟/秒 样式可以在这里使用?或者可能是有意义的特殊 5 位刻度。
当我使用 Visual Studio 自动增量修订版 1.0.0.* 功能时的主要问题。它给出任意增量值。并且包输出没有排序。
我现在该怎么办?现在我需要使用 Time for revision 字段...你能帮忙吗?
编辑, 如果上述 5 位样式不可用。我发现文章增加了一个修订。但它非常古老并且使用 JavaScript! https://www.codeproject.com/Tips/161923/Incrementing-AssemblyVersion-revision-number-on-ea
还有一个问题没有回答哪个还是新的I would like to increment the build revision version for every build in visual studio
我得到了以下代码,它获得了版本 2022.02.20.Revision(在 MSDN 限制为大值午夜 * 2 期间,修订是无用的。
编辑: 在 VS 市场中唯一的 extension 没有更新到 Visual Studio 2022 或者他们可能不支持它时,我尝试在下面给出解决方案:
(如果您有更好的方法,请随时修改答案)
【问题讨论】:
-
包输出没有排序怎么办?文件名按降序排列,时间列按(或看起来)按降序排列。
-
是的,它是有序的,但它的修订号毫无意义。是否有任何 5 位数的小时/分钟/秒样式可以使用。或者如何让它每天增加?例如第 20 天修订从 1、2、3、4 等开始。第 21 天从 1、2、3.. 开始。
-
一天有 86,400 秒,因此您可以使用这 5 位数字将时间存储为从午夜开始的秒数。我认为生成的数字不会比其他数字更不透明,否则您可能会将 6 位数字编码为 5 位数字。另外,您真的希望在同一分钟内创建多个构建吗?也许您可以将其存储为
seconds / 10或seconds / 12。密切相关:How to use release date as assembly version for a .net project?、Creating a revision number from date/time
标签: c# .net datetime .net-assembly versioning