'=' 操作爲什麼我的代碼拋出錯誤 Cannot perform '=' operation on System.DateTime and System.Int32.
,爲什麼我的程序thorws此錯誤:無法執行上的System.DateTime和System.Int32
此行拋出錯誤:
DataRow[] dr = ds.Tables[0].Select("HolidayDate=" + SelectedDate);
但是當我傳遞了像「#2014-10-12#」這樣的靜態日期,然後它就起作用了,我還在selectedDate後面加了#,但程序沒有給出答覆。
完整代碼:
protected void Calndar_SelectionChanged(object sender, EventArgs e)
{
string SelectedDate = Calndar.SelectedDate.ToString(DateTime.Now.ToString("yyyy") + "-" + "MM-dd");
DataSet ds = (DataSet)Session["Calendar"];
DataRow[] dr = ds.Tables[0].Select("HolidayDate=" + SelectedDate);
foreach (DataRow drr in dr)
{
Response.Write(SelectedDate);
}
字符串SelectedDate門店值,也顯示在的Response.Write
更新後的代碼也沒有。如果你想避免這樣的日子努力
protected void Calndar_SelectionChanged(object sender, EventArgs e)
{
DateTime SelectedDate =new DateTime(DateTime.Now.Year, Calndar.SelectedDate.Month, Calndar.SelectedDate.Day);
DataSet ds = (DataSet)Session["Calendar"];
IEnumerable<DataRow> selectedRows = ds.Tables[0].AsEnumerable().Where(row => (row.Field<DateTime>("HolidayDate") == SelectedDate));
foreach (DataRow drr in selectedRows)
{
Response.Write(drr[4]);
}
}
你的.SelectedDate.ToString()看起來很奇怪。我會嘗試設置所需的日期(當前年份),然後將其格式化爲yyyy-MM-dd字符串格式。但是,如果您的HolidayDate列是日期時間數據類型,則vc74的答案是首選方式。 – Filburt 2014-10-22 10:37:51
檢查我的更新的代碼 – 2014-10-22 10:48:48
什麼不行? – 2014-10-22 11:08:07