0

私のクエリ文字列には2つの変数があります:

&Start=Mon Apr 02 2012 00:00:00 GMT+0200&End=Thu Apr 26 2012 00:00:00 GMT+0200

手に入れようとすると

このような:

DateTime EndDate = Convert.ToDateTime(Request.QueryString["End"]);

またはこれ:

DateTime date = DateTime.ParseExact(Request.QueryString["Start"], "dd/MM/yyyy", System.Globalization.CultureInfo.CurrentUICulture.DateTimeFormat);

メッセージが表示されました: 文字列は有効な DateTime として認識されませんでした。

誰でも私を助けることができますか?

PS: 私は devexpress コンポーネントを使用します

 <dx:ASPxDateEdit ID="ASPxDateEdit_Synthe_Fin" runat="server" Width="100px" ClientInstanceName="ASPxDateEdit_Synthe_Fin">
                                                 </dx:ASPxDateEdit>

  <dx:ASPxButton ID="ASPxButton_Synthese" runat="server" Text="Synthese" AutoPostBack="False">
                             <ClientSideEvents Click="function (s, e) { e.processOnServer = false; window.open('Report/Syntehse.aspx?CientID='+ASPxComboBox_Client.GetValue()+'&Start='+ASPxDateEdit_Synth_Deb.GetValue()+'&End='+ASPxDateEdit_Synthe_Fin.GetValue());}" />
                        </dx:ASPxButton>

ここに画像の説明を入力 ここに画像の説明を入力

よろしくお願いします

4

3 に答える 3

1

なぜあなたは書くの"dd/MM/yyyy"ですか?それはQSのフォーマットではありません...

それは次のようなものでなければなりません:

ddd MMM  dd yyyy HH:mm:ss

--->2012 年 4 月 2 日月曜日 00:00:00 GMT+0200

于 2012-04-16T13:45:22.670 に答える
1

Convertさまざまな形式を試しますが、ご覧のとおり失敗する可能性があります。

ParseExactまたはを使用する場合、解析しようとしている文字列に直接TryParseExact対応するフォーマット文字列を渡す必要があります。

を使用dd/MM/yyyyしていMon Apr 02 2012 00:00:00 GMT+0200ます。これらは互いに対応していません。

ddd MMM dd yyyy HH:mm:ss G\MTK代わりに試してください:

DateTime.ParseExact("Mon Apr 02 2012 00:00:00 GMT+0200", 
                    "ddd MMM dd yyyy HH:mm:ss G\\MTK",
                    CultureInfo.InvariantCulture)

アップデート:

追加の問題は、URL パラメーターが URL エンコードされていないため、次のようになることです。

&Start=Mon Apr 02 2012 00:00:00 GMT+0200&End=Thu Apr 26 2012 00:00:00 GMT+0200

+サーバー側で文字がスペースとして表示されることになります ( URL+のスペースもエンコードするため)。

URL に配置する前に、日付/時刻の値を URL エンコードする必要があります。

于 2012-04-16T13:46:41.993 に答える
0

DateTime.ParseExact(date, "ddd MMM dd yyyy HH:mm:ss \"GMT\"zzz", System.Globalization.CultureInfo.InvariantCulture) は、クエリ文字列で指定された形式で機能します。

于 2012-04-16T14:02:55.343 に答える