2016-12-27 5 views
1

Ich habe einen Datum Zeit Wert aus Textbox (Datepicker) extrahiert, die eine Zeitspanne ist aber ich benutze Sub-String, um den Zeitbereich zu admissionDT und enterDTT weiter zu teilen.Wie auch immer ich den Teilstring nicht konvertieren kann DateTime, da ich sie in die Datenbank einfügen wollte. Der angezeigte Fehler war String wurde nicht als gültige DateTime erkannt.Wie konvertiert man Teilstring zu Datetime

string admissionDischargeDT = adDT.Text; 
string admissionDT = admissionDischargeDT.Substring(0,17); 
string dischargeDT = admissionDischargeDT.Substring(18,17); 

DateTime admissionDTinput = DateTime.ParseExact(admissionDT,"dd-mm-yyyy hh:mm tt",System.Globalization.CultureInfo.InvariantCulture); 
DateTime dischargeDTinput = Convert.ToDateTime(dischargeDT); 

Unten sind die Codes für den Datepicker in der aspx gefunden.

<div class="form-group"> 
     <label class="col-lg-2">Admission Date & Time</label> 

      <div class =" col-lg-10"> 
      <div class="input-group"> 

     <span class="input-group-addon"><i class="icon-calendar22"></i></span> 
     <asp:TextBox ID="adDT" type="text" runat="server" class="form-control daterange-time" value=""></asp:TextBox> 
             </div> 
            </div> 
           </div> 
+0

Was ist der Wert der Zeichenfolge zu analysieren sind versuchen? Der Fehler würde darauf hindeuten, dass es nicht das ist, was Sie denken. – David

+0

Der Wert ist 12/28/2016 12:00 Uhr - 28.12.2016 23:59 Uhr. Ich versuche, diesen Wert aus dem Datepicker, der ein Textfeld ist, zu extrahieren. –

+0

'" 28.12.2016 12:00 Uhr "' stimmt nicht mit der Formatzeichenkette '" TT-MM-JJJJ hh: mm tt "' überein. "ParseExact" bedeutet wirklich * exact *. – David

Antwort

1

In einem Kommentar sagen Sie:

Der Wert 2016.12.28 00.00

ist

Aber Ihr Format-String ist:

"dd-mm-yyyy hh:mm tt" 

Das stimmt nicht mit der Eingabe überein. Es klingt wie das gewünschte Format ist:

"MM/dd/yyyy hh:mm tt" 
  • Sie wurden mit - statt /
  • Sie wurden Minuten statt Monaten
  • Ihr Tag/Monat Werte wurden umgesetzt (es verwendet, ist kein 28. Monat)
+0

Es funktioniert jetzt, danke für die Hilfe –

Verwandte Themen