0

我试图更好地理解如何声明一个变量(字符串)以及方法是如何工作的。我正在尝试将日期(从日历扩展器)重新格式化为字符串,并将其作为参数传递给填充网格视图的查询。(这与我之前的问题有关。)转换语句如下所示:

string s_apptdate = apptDate_CalendarExtender.SelectedDate.ToString("yyyyMMdd");

它应该采用下面的方法吗?还是以一种完全属于自己的方法?当我把它放在下面的方法中时,我得到一个错误“方法'ToString'没有重载需要1个参数”我的方法看起来像这样

private void query1() 
{
    string s_apptdate = "07/15/2011";
    SqlConnection conn = new SqlConnection("Data Source=*****;Initial Catalog=*****;Persist Security Info=True;User ID=sa;Password=*****");
    string command = "SELECT column1, column2 FROM table where appt_date = '" + s_apptdate + "'";
    SqlDataAdapter comm = new SqlDataAdapter(command, conn);
    DataSet ds = new DataSet();
    comm.Fill(ds);
    GridView1.DataSource = ds;
    GridView1.DataBind();
}
4

1 回答 1

0

您的 SelectedDate 属性可能是DateTime?(或Nullable<DateTime>),在这种情况下您必须这样做

apptDate_CalendarExtender.SelectedDate.Value.ToString("yyyyMMdd");

检查 SelectedDate 是否有值后

string s_apptdate;
if (apptDate_CalendarExtender.SelectedDate.HasValue)
  s_apptdate = apptDate_CalendarExtender.SelectedDate.Value.ToString("yyyyMMdd");
else
  s_apptdate = string.Empty;
于 2011-07-19T15:18:04.657 回答