クエリ文字列を介してあるページから別のページにDateTimeを渡すWebアプリケーションがあります。IEとFireFoxの両方で問題なく動作していましたが、GoogleChromeで試すたびに例外がスローされていました。プログラムは次の行で窒息しています:
startDateTime = Convert.ToDateTime(Request.QueryString["start"]);
そこで、デバッガーを実行したところ、クエリ文字列の値は次のとおりであることがわかりました。
Wed Oct 03 2012 08:00:00 GMT-0400 (Eastern Daylight Time)
私は、Convertが仕事に向いていないと結論し、DateTime.ParseExactを取得してこの獣を飼いならすことに着手しました。しかし、これまでのところ、正しいフォーマット文字列は私にはわかりませんでした。これが私が試したコードです(これは機能しません):
DateTime.ParseExact(Request.QueryString["start"], "ddd MMM dd yyyy HH:mm:ss zzz", CultureInfo.InvariantCulture);
このページは、サードパーティコンポーネント(DayPilotCalendar)によって呼び出されるJavaScriptを介して別のページから呼び出されています。DayPilotCalendarコントロールに設定されている関連プロパティは次のとおりです。
TimeRangeSelectedJavaScript="GB_showPage('Request Magnet Time', '../../../EventAddEdit.aspx?start=' + encodeURIComponent(start) + '&end=' + encodeURIComponent(end))"
フォーマット文字列の何が問題になっていますか?