在VB中,字符串未以正确的格式分配给另一个字符串

时间:2013-02-12 13:19:42

标签: asp.net vb.net date

以下是使用的代码

Dim FilterExpression As string
Dim oDate as DateTime

oDate=System.DateTime.Now
 FilterExpression = " quot_date >= '" + oDate.ToString() + "'"

在分配之前oDate包含#2/10/2013 6:10:35 PM#这个,但当它分配给FilterExpression时,它变为quot_date >= '10/02/2013 6:10:35 PM' 日期正在改变他的格式

知道为什么吗?

1 个答案:

答案 0 :(得分:3)

首先,那是VB而不是C#。

其次,oDate的值是DateTime类型的值。鉴于#2/10/2013 6:10:35 PMDateTime类型的VB 文字DateTime.ToString使用的不是表示形式。它使用当前文化的默认格式 - 显然是有效使用dd/MM/yyyy hh:mm:ss tt的格式。

如果您需要特定的字符串表示形式,可以使用standardcustom字符串格式作为DateTime.ToString的参数,还可以指定要使用的区域性。 (例如,使用自定义字符串格式,您可能希望使用不变文化。)

但是,如果您尝试将其用作 - 例如在SQL查询中 - 最好不要将其转换为字符串以开始。你还没有告诉我们你想要实现的目标,但我会尝试以避免将其转换为字符串,除非你真的需要。