-1
我目前正在做一個Web應用程序,我需要過濾一個日期範圍的圖表,這個範圍選擇了兩個日曆,將日期傳遞給兩個不同的文本框。我嘗試過兩種不同的方式:使用filterparameters和「between @ date1 and @ date2」查詢。從字符串轉換日期和/或時間時轉換失敗。
的事情是我得到的是說了一個問題:從字符串轉換日期和/或時間時
轉換失敗。 只有當我選擇第二個日期範圍時,纔會出現此錯誤,它不會影響我從日曆中選擇日期的順序。我也檢查了我的日期時間轉換。
我已經debbuged已經和我沒有看到我的代碼中的錯誤:
protected void Calendar2_SelectionChanged(object sender, EventArgs e)
{
txtDate2.Text = Calendar2.SelectedDate.ToShortDateString();
Calendar2.Visible = false;
}
protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
txtDate1.Text = Calendar1.SelectedDate.ToShortDateString();
Calendar1.Visible = false;
}
這是我在代碼和客戶端查詢:
protected void btnShow_Click(object sender, EventArgs e)
{
DateTime date1 = Convert.ToDateTime(txtDate1.Text);
DateTime date2 = Convert.ToDateTime(txtDate2.Text);
using (SqlConnection conn = new SqlConnection(CONNECTION_STRING))
{
using (SqlCommand cmd = new SqlCommand())
{
try
{
cmd.Connection = conn;
cmd.CommandType = System.Data.CommandType.Text;
cmd.CommandText = "select Family, sum (TimeMins) as sumfield from DTCres where DateCres between @Date1 and @Date2 group by Family order by sumfield desc ";
cmd.Parameters.AddWithValue("@Date1", date1);
cmd.Parameters.AddWithValue("@Date2", date2);
conn.Open();
cmd.ExecuteNonQuery();
//SqlDataReader dr = cmd.ExecuteReader();
//if (dr.HasRows == !true)
//{
// //dateLabel.Visible = true;
//}
//if (dr.HasRows == true)
//{
// //dateLabel.Visible = false;
//}
conn.Close();
}
catch (Exception nessie)
{
string doc = nessie.Message;
//dateLabel.Visible = true;
}
}
}
}
<asp:SqlDataSource ID="SqlDS" runat="server" ConnectionString="<%$ ConnectionStrings:DTCrestronConnectionString %>"
SelectCommand="select Family, sum (TimeMins) as sumfield from DTCres where DateCres between @Date1 and @Date2 group by Family order by sumfield desc"
FilterExpression="Family='{0}'">
<SelectParameters>
<asp:ControlParameter Name="Date1" ControlID="txtDate1" PropertyName="Text" Type="String"/>
<asp:ControlParameter Name="Date2" ControlID="txtDate2" PropertyName="Text" Type="String"/>
</SelectParameters>
<FilterParameters>
<asp:ControlParameter ConvertEmptyStringToNull="false" Name="Family" ControlID="cmbChartFam1" PropertyName="Text" />
</FilterParameters>
</asp:SqlDataSource>
</td>
請,任何幫助將如此好,並提前感謝
什麼行具體是拋出錯誤?這聽起來像是一個DateTime轉換,它可以解決這個問題,你試圖轉換的字符串具體是什麼? –
你應該輸入這個答案,以便人們知道你找到了答案,找到了你的答案。請參閱:https://stackoverflow.com/help/self-answer –