【问题标题】:Force AssemblyVersion("1.0.*") to observe DST when populating Revision?填充修订时强制 AssemblyVersion("1.0.*") 遵守 DST?
【发布时间】:2011-12-07 23:59:58
【问题描述】:

似乎在 C# 项目的 AssemblyInfo.cs 文件中使用以下语法时,Revision 值不遵守夏令时(它确实使用本地时间)。

[assembly: AssemblyVersion("1.0.*")]

有没有办法让 .NET 在将上述内容转换为时间戳时考虑 DST?

【问题讨论】:

  • 如果还没有,我不相信你能做到。该属性及其生成版本的方式是内部 BCL 代码,无法在 Microsoft 之外进行控制。
  • 我一直试图找到anything's 记录了使用该格式自动选择的数字的位置。我发现的唯一相关文档表明这些数字是任意的——它们并不意味着一定是日期和时间。您是否有任何文档指定它们应该是?
  • @Jon - 属性构造函数文档中的描述是:msdn.microsoft.com/en-us/library/…
  • 或者,如果您需要对程序集版本控制方案进行精细控制,您可以改用 AssemblyFileVersion。可以参考这篇文章:all-things-sharp.com/2011/08/…
  • @Oded:啊,谢谢。我想知道为什么其他地方没有提到这一点。

标签: .net assemblies timestamp version dst


【解决方案1】:

好吧,错误的问题,你应该问如何让它使用 UTC。因为如果您不知道构建服务器的位置,那么您获得的时间戳无论如何都没有任何意义。如果您确实知道它的位置,那么您知道的足够多,也可以使用 TimeZoneInfo 类对 DST 时间进行逆向工程。

【讨论】:

    【解决方案2】:

    在将星号转换为时间戳时,您不能让 .NET 考虑 DST。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多