MyDataSource.SelectParameters["startDate"].DefaultValue =
fromDate.SelectedDate.Date.ToString();
Wie Sie sehen können, setze ich den Standardwert eines Parameters in meiner .Net SqlDataSource. Ich glaube nicht, dass die Zeichenfolge das richtige Format ausgibt. Was ist das korrekte Format, damit ein T-SQL Datetime es richtig zusammenbringt?Wie kann ich ein .Net Datetime in ein T-SQL konvertieren Datetime
Hier sind die Formate, die jetzt ausgegeben werden:
- 5/1/2009 12:00:00 AM
- 2009.05.04 23.59.59
Edit: Bevor ich hatte Datasource, wo es SqlDataSource geschrieben wurden, sollten
Und hier ist ein Code
<asp:SqlDataSource ID="MyDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:sampledb %>" SelectCommand="Recording_Select" SelectCommandType="StoredProcedure" OnSelecting="MyDataSource_Selecting">
<SelectParameters>
<asp:ControlParameter ControlID="respondentID" DefaultValue="%" Name="RespondentID" PropertyName="Text" Type="String" />
<asp:SessionParameter Name="projectCode" SessionField="proj" Type="String" />
<asp:ControlParameter ControlID="interviewerList" Name="InterviewerID" PropertyName="SelectedValue" Type="String" />
<asp:ControlParameter ControlID="dispCodeList" Name="dispCode" PropertyName="SelectedValue" Type="Int32" />
<asp:ControlParameter ControlID="fromDate" DefaultValue="1/1/1900" Name="startDate" PropertyName="SelectedValue" Type="DateTime" />
<asp:ControlParameter ControlID="toDate" DefaultValue="1/1/1900" Name="endDate" PropertyName="SelectedValue" Type="DateTime" />
</SelectParameters>
</asp:SqlDataSource>
Edit: Nun, dachte ich, das Problem aus, und es wird ein bisschen albern zu sein scheint. Der Code hat den DefaultValue nie aufgerufen, da immer ein Wert vorhanden war. Meine einzige Lösung bestand darin, ein neues verstecktes Label-Steuerelement zu erstellen und das korrigierte Datum in dieses zu laden. Das hat ziemlich gut funktioniert. Ich weiß nicht, wie ich das übersehen habe.
Gute Vorschläge. Ich habe das nicht gemacht, also muss ich mir überlegen, warum es nicht so eingerichtet ist. –
Ich vermute, der Assistent wurde verwendet, um eine SqlDataSource einzurichten und ich habe keine Möglichkeit gesehen, einen Typ zu wählen –
Es hätte etwas Code generieren sollen - es würde helfen, diesen Code zu sehen. –