2

「smalltime」タイプのデータベースからアイテムを取得するフォームがあり、これを「smalldatetime」として別のデータベースに再度追加したいのですが、遭遇した問題は、アイテムを文字列で読み取ることです。これを変換するためにどのようなアプローチを取るべきかわかりませんが、これまでに私が持っているものは次のとおりです。

var checkOutDate = Convert.ToDateTime(ddlCheckOutDate.Text);
sl.ReqCheckOutDate = checkOutDate;

誰かがこのハードルを乗り越えて私を助けることができますか?

4

1 に答える 1

1

あなたが報告している問題は、文化の違いによるものです。米国形式の日付を使用しており、現在のカルチャは英国などに設定されているため、Day / Month / Yearを使用していると見なされ、2013年12月14日はDay = 12 Month = 14 Year = 2013となり、無効になります。

DateTime.ParseExactを使用すると、日付の正確な変換を制御できます。

CultureInfo provider = CultureInfo.InvariantCulture;
string dateAsText = "12/14/2012 12:00:00 PM";
DateTime something = DateTime.ParseExact(dateAsText, "MM/dd/yyyy hh:mm:ss tt", provider);
于 2013-02-06T15:05:44.233 に答える