Der Wert von insert-parameter des SqlDataSource-im codebehind
Habe ich diese SqlDataSource
in meinem Formular:
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
InsertCommand="INSERT INTO [contact] ([Name], [phone], [email], [comment], [time]) VALUES (@Name, @phone, @email, @comment, @time)"
oninserting="SqlDataSource1_Inserting" >
<InsertParameters>
<asp:ControlParameter ControlID="TBname" Name="Name" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TBphone" Name="phone" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TBemail" Name="email" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TBmessage" Name="comment" PropertyName="Text" Type="String" />
</InsertParameters>
</asp:SqlDataSource>
Und ich habe diese Funktion zum speichern der Werte der Textfelder in den ersten vier Felder und die aktuelle Uhrzeit im fünften Feld:
protected void SaveToDB(object sender, EventArgs e)
{
SqlDataSource1.InsertParameters["time"].DefaultValue = DateTime.Now.ToString();
SqlDataSource1.Insert();
}
4 von 5 Felder bekommen Ihre Werte von einigen Textboxen in meiner form. nun problem ist das Letzte Feld: time
ich kann nicht setzen Sie den Wert. Wenn die Funktion ausgeführt wird, gibt Ihnen dieser Fehler:
Exception Details: System.Daten.SqlClient.SqlException: String oder
Binärdaten würden abgeschnitten werden. Die Anweisung wurde beendet.
Was soll ich tun?
vielen Dank für die Zeit nehmen.
DateTime.Nun.ToShortDateString(); versuchen Sie, diese
Ja! das tun werde. zuerst schreiben Sie bitte Ihr Kommentar als eine Antwort, so kann ich setzen Sie ein Häkchen wahre Antwort. Typ "Zeit" - Feld in meiner db war char(10), die ich gemacht es char(Max) - und es ist gut jetzt. danke,
fertig! froh, dass ich helfen konnte ^^
Ja! das tun werde. zuerst schreiben Sie bitte Ihr Kommentar als eine Antwort, so kann ich setzen Sie ein Häkchen wahre Antwort. Typ "Zeit" - Feld in meiner db war char(10), die ich gemacht es char(Max) - und es ist gut jetzt. danke,
fertig! froh, dass ich helfen konnte ^^
InformationsquelleAutor Mahyar Kakaee | 2012-06-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
versuchen Sie dies:
"Zeichenfolgen-oder Binärdaten würden abgeschnitten." in der Regel zu tun hat, bei dem die Felder in Datenbanken mit einer kleineren Größe, dann das, was Sie versuchen, in Sie.
InformationsquelleAutor Thousand
Sollten Sie in der Lage sein, die Verwendung des SQL-GetDate-Funktion direkt in die Eigenschaften InsertCommand, ohne mit code-behind.
InformationsquelleAutor Dave