日付を使用するC#でプログラムを作成しました。 SQL Serverテーブルから値を取得します。私はWindows 7を使用していて、プログラムはうまくいきました。私は、このコード行を持っていた:DateTimeをSQL ServerからC#DateTimeに変換できません
DateTime fechaOperacion = Convert.ToDateTime(reader["FechaOperacion"]);
読者は24時間形式で日付を返したと私はDateTime
変数にそれを変換することができました。
今私は、システムは、Windows 10にアップグレードしなかったし、コードの同じ行には、次のエラーがスローされます。
String was not recognized as a valid DateTime. there is an unknown word starting at index 20.
そして今、リーダー返す午前/〜午後フォーマットであり、インデックス20にはa.mまたはp.m.がある。コードの行を言い換え
:24時間形式
に文化を変換Convert.ToDateTime(reader["FechaOperacion"], System.Globalization.CultureInfo.InvariantCulture)
reader.GetDateTime(reader.GetOrdinal("FechaOperacion"));
-
は、私は次のことを試してみました
System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo(1033);
しかし、それのどれも動いていないようにみえ、私は何をする他に何かわかりません。
以下のような変換を行うことができます「動作するようには思えない」を定義します。具体的には、独立して任意の形式の 'DATETIME'列を読み取るための正しい方法である' reader.GetDateTime(reader.GetOrdinal(「FechaOperacion」)) 'の結果は何ですか? –
**正確には**読者["FechaOperacion"] 'が返っていますか? 'String'という言葉は、' 'SQL DateTime ''ではないことを意味します.SQLの' datetime'値は問題なく、解析する必要はありません。それでは、何ですか? –
'FechaOperacion'がDATETIME列の場合、それは表示の問題のように聞こえます。 'var dateStr = fechaOperacion.ToString(" dd/MM/yyyy HH:mm:ss ");'を実行するとどうなりますか? 'dateStr'の値は何ですか? – Howwie