2012-04-04 2 views
0

Ich versuche, Datum mit "MM/TT/JJJJ" Format in ein Datumsformatfeld in einer Detailansicht einzufügen. Aber ich bin gettin Fehlermeldung:Wie fügt man ein Datumsfeld mit Format ("MM/TT/JJJJ") in der Detailansicht ein?

String was not recognized as a valid DateTime 

Ich versuchte, wie

<asp:TextBox ID="TextBox2" runat="server" 
Text='<%# Bind("RenewalDate","{0,MM/dd/yyyy}")%>' ></asp:TextBox> 

Wie kann ich das Datum im Format MM/tt/????

+0

http://stackoverflow.com/questions/4633271/how-to-insert-current-date-into-a-date-field-in-dd-mm-yyyy-format-in-oracle –

Antwort

3

Die Formatzeichenfolge ist ungültig. Sie benötigen einen Doppelpunkt nach dem Platzhalter anstelle eines Kommas:

Text='<%# Bind("RenewalDate","{0:MM/dd/yyyy}")%>' 

, die das Problem beheben sollte, unter der Annahme, RenewalDate ist eine DateTime Spalte. Wenn es nicht ein DateTime Spalte ist, müssen Sie es konvertieren, bevor Sie das Format anwenden:

Text='<%# Convert.ToDateTime(Bind("RenewalDate")).ToString("MM/dd/yyyy") %>' 

EDIT

Um sicherzustellen, dass die Eingabe gültig ist, kann addieren Sie vergleichen und erforderlich Feldvalidatoren:

<asp:RequiredFieldValidator ID="reqDateValidator" runat="server" Display="Dynamic" ErrorMessage="*" ControlToValidate="TextBox1" /> 
<asp:CompareValidator 
    id="dateValidator" runat="server" 
    Type="Date" 
    Operator="DataTypeCheck" 
    ControlToValidate="TextBox1" 
    ErrorMessage="Invalid Date"> 
</asp:CompareValidator> 
+0

Hallo, ich bin sry Ich tippte es falsch auf dem Post. Aber ich habe es mit korrekter Syntax versucht, aber ich bekomme den gleichen Fehler. Und nur zur Klarstellung: Ist dies eine korrekte Methode zum Einfügen von Daten? coz Ich zeige nicht die Daten an, die ich Daten einfüge. – Sas

+0

Ja renewalDate ist ein DateTime-Feld. – Sas

+0

Siehe das zweite Beispiel dann. Wenn nicht wirklich etwas aus dem Ruder läuft, sollte das zweite Beispiel definitiv funktionieren. Es ist schwierig zu sagen, ob das Einfügen korrekt ist. Ich würde mehr Kontext benötigen, um diese Frage zu beantworten. –

0

Sie RenewalDate aus der DB importiert ist nicht ein gültiges DateTime Objekt.

ansonsten - es wird Ihnen diesen Fehler nicht zeigen.

zeigen Sie die Abfrage, für die Sie den Wert erhalten.

+0

wenn ich wie einfügen " 2012-04-04 "(JJJJ-MM-TT) lass es mich einfügen. Die Deatil-Ansicht versteht nicht das Format MM/TT/JJJJ, das ist das Problem. Aber ich muss das Datum im Format MM/TT/JJJJ eingeben. – Sas

+0

erneut, Rückgabe von Datetime OBJECT von DB/DataSource nicht. Wenn Sie einen String-Wert anstelle von DateTime-Wert haben, sollten Sie 'DateTime.TryParse' -Funktion verwenden –

0

Sie einen Blick auf diesen Artikel auf, wie Datum zu formatieren nehmen können Werte Custom dates format

Verwandte Themen