2

日付を選択するasp.netカレンダー'selectedDate'と時刻を選択するtimePiker'starttime'2つの文字列を追加しようとしています1startTimeオブジェクト'startDateTime'

        string strDate = Calendar1.SelectedDate.ToShortDateString(); ;
        string startTime = txtb_endTimeManual.Text;
        DateTime startDateTime = Convert.ToDateTime(strDate + startTime);

エラーメッセージ文字列が有効な日時として認識されませんでした。

4

3 に答える 3

4

2 つの文字列の間にスペースを追加する必要があります。strDate が '1/15/2012' で startTime が '6:30:00 PM' の場合、2 つの文字列を連結すると '1/15/20126:30:00 PM' となるため、形式はすべてオフになります。

DateTime startDateTime = Convert.ToDateTime(strDate + " " + startTime);
于 2012-09-07T17:09:37.710 に答える
1

Convert.ToDateTime()入力を見ないと、それらが適切にフォーマットされていると信頼できるかどうかを判断するのは難しいですが、それ以上に、メソッド呼び出しで日付と時刻の間にスペースがないと言えます。

于 2012-09-07T17:10:31.400 に答える
0

文字列への変換、文字列連結、および別の変換を行うのではなく、CalendarはすでにDateTimeオブジェクトを返します。時間を設定できます。

string startTime = txtb_endTimeManual.Text;
DateTime startDateTime = Calendar1.SelectedDate.Add(TimeSpan.Parse(startTime));
于 2012-09-07T17:16:05.317 に答える