0

嗨,我必须比较从 C# 代码发送到 SQLServer 的日期时间以及毫秒。

我已将日期转换如下..

CultureInfo provider = CultureInfo.InvariantCulture;
        DateTime MyDateTime = new DateTime();
        MyDateTime = DateTime.ParseExact(MyString, "yyyy-MM-dd HH:mm:ss.fff",
                                         provider);

我已将上述日期设置为 SP。

但是当我将它发送到数据库时,只有以下值是从 C# 代码发送“2013-05-06 14:33:13 PM”。当我尝试转换数据库中的值时,那里缺少毫秒值。我在 SQl 服务器中使用 convert 转换上述内容,如下所示

Select convert(varchar(23),@ModifiedDt,109) 

对于从 C# 代码给出的输入,它给出的值如下“May 6 2013 2:33:13:00”。但是当数据库中的数据被转换时,它如下“May 6 2013 2:33:13:96”。所以日期错过的价值以毫秒为单位。我必须检查甚至毫秒才能找到交易是真实的天气。有人请告诉如何从 C# 代码发送值来克服上述问题。

4

1 回答 1

0

如果可能,我建议不要将值作为日期时间传递,而是将其作为 ISO 8601(例如:-'2011-08-02T05:07:27.000')字符串传递。您可以在 sql 比较中直接使用该字符串。它解决了你的问题。

于 2013-06-10T08:16:10.597 回答