Este comportamiento está integrado en el depurador, en el caso específico que está depurando un programa escrito en VB.NET. Visible desde la aparición de #
en la captura de pantalla. Nada terriblemente inusual, el depurador en muchos casos hace un esfuerzo para hacer que su salida sea la misma que la forma en que lo habría escrito en un programa. Tome C# por ejemplo, una cadena que contiene comillas dobles incrustadas se mostrará con barras invertidas delante de ellos. No está realmente presente en la cadena, pero es necesario cuando declaras una cadena literal en el código fuente.
Así que las reglas de lenguaje de VB.NET se aplican para el formato de la cadena literal que ve. Descrito en el capítulo 2.4.6 de la Especificación del idioma, es no culturalmente sensible. Por supuesto, no puede ser, su código fuente no va a producir un programa diferente cuando su colega en China lo compila. Copiaré/pegaré las reglas de producción:
DateLiteral ::= # [ Whitespace+ ] DateOrTime [ Whitespace+ ] #
DateOrTime ::=
DateValue Whitespace+ TimeValue |
DateValue |
TimeValue
DateValue ::=
MonthValue/DayValue/YearValue |
MonthValue – DayValue - YearValue
TimeValue ::=
HourValue : MinuteValue [ : SecondValue ] [ WhiteSpace+ ] [ AMPM ] |
HourValue [ WhiteSpace+ ] AMPM
MonthValue ::= IntLiteral
DayValue ::= IntLiteral
YearValue ::= IntLiteral
HourValue ::= IntLiteral
MinuteValue ::= IntLiteral
SecondValue ::= IntLiteral
AMPM ::= AM | PM
Por lo tanto, siempre es mes/día/año. Si necesita ver cómo se ve cuando lo convierte en una cadena, debe usar la conversión de cadena adecuada en su expresión de reloj. Al igual que CStr(Date.Now)
, etc., tenga en cuenta que hay muchas maneras de hacerlo, ya que DateTime.ToString() puede tomar caracteres de formateo.
Las fechas se muestran en ?! – Benjol
¿Qué es "Fecha" en su reloj? ¿Es eso un objeto personalizado? –
@MichalCiechan en vb.net usa la fecha en lugar de la fecha y hora. – Peter