当前位置:  开发笔记 > 编程语言 > 正文

.NET Date Const(全球化)

如何解决《.NETDateConst(全球化)》经验,为你挑选了1个好方法。

有没有人知道一种声明与国际日期兼容的日期常量的方法?

我试过了:

' not international compatible
public const ADate as Date = #12/31/04#

' breaking change if you have an optional parameter that defaults to this value
' because it isnt constant.
public shared readonly ADate As New Date(12, 31, 04)

Jason DeFont.. 6

如果你看一下该语句生成的IL

public const ADate as Date = #12/31/04#

你会看到这个:

.field public static initonly valuetype [mscorlib]System.DateTime ADate
.custom instance void [mscorlib]System.Runtime.CompilerServices.DateTimeConstantAttribute::.ctor(int64) = ( 01 00 00 C0 2F CE E2 BC C6 08 00 00 )

请注意,DateTimeConstantAttribute正在使用一个带有int64滴答计数的构造函数进行初始化.由于此滴答计数是在compilile时确定的,因此在运行时初始化此值时,似乎不太可能发生任何本地化.我的猜测是错误是代码中的其他日期处理,而不是const初始化.



1> Jason DeFont..:

如果你看一下该语句生成的IL

public const ADate as Date = #12/31/04#

你会看到这个:

.field public static initonly valuetype [mscorlib]System.DateTime ADate
.custom instance void [mscorlib]System.Runtime.CompilerServices.DateTimeConstantAttribute::.ctor(int64) = ( 01 00 00 C0 2F CE E2 BC C6 08 00 00 )

请注意,DateTimeConstantAttribute正在使用一个带有int64滴答计数的构造函数进行初始化.由于此滴答计数是在compilile时确定的,因此在运行时初始化此值时,似乎不太可能发生任何本地化.我的猜测是错误是代码中的其他日期处理,而不是const初始化.

推荐阅读
U友50081205_653
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有