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) 

次のように値を与えます "May 6 2013 2:33:13:00" For input Given From C# code. しかし、データベースのデータを変換すると、「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 に答える