C# 如何在数据表中填写所选月份的所有日期

C# 如何在数据表中填写所选月份的所有日期,c#,date,C#,Date,我试图在数据表中填写所选月份的所有日期。我已经做了下面提到的方法,但它不工作 public DataTable GetDates() { DataTable dt = new DataTable(); int year = Convert.ToInt32(ddyear.SelectedItem.Value);//I selected year 2015 int month = Convert.ToInt32(ddmonth.SelectedItem.Value);//I selected m

我试图在数据表中填写所选月份的所有日期。我已经做了下面提到的方法,但它不工作

public DataTable  GetDates()
{
DataTable dt = new DataTable();
int year = Convert.ToInt32(ddyear.SelectedItem.Value);//I selected year 2015
int month = Convert.ToInt32(ddmonth.SelectedItem.Value);//I selected  month 3
for ( date = new DateTime(year, month, 1); date.Month == month; date =    date.AddDays(1))
{
  dt.Rows.Add(date);
  date = date.AddDays(1);
}
return dt;
}
我该怎么做???

公共数据表GetDates()
    public DataTable GetDates()
    {
        DataTable dt = new DataTable();
        dt.Columns.Add("Date", typeof(DateTime));

        int year = Convert.ToInt32(ddyear.SelectedItem.Value);
        int month = Convert.ToInt32(ddmonth.SelectedItem.Value);

        int daysInMonth = DateTime.DaysInMonth(year, month);
        for (int i = 0; i < daysInMonth; i++)
        {
            DataRow dr = dt.NewRow();
            dr["Date"] = new DateTime(year, month, i + 1);
            dt.Rows.Add(dr);
        }

        return dt;
    }
{ DataTable dt=新的DataTable(); 添加(“日期”,类型(日期时间)); int year=Convert.ToInt32(ddyear.SelectedItem.Value); int month=Convert.ToInt32(ddmonth.SelectedItem.Value); int daysInMonth=DateTime.daysInMonth(年,月); 对于(int i=0;i
它怎么不起作用?是否有异常?@Cuong Le,输入数组的长度超过了此表中的列数。这是一个例外。您必须首先向datatable添加列(包含名称和数据类型)。目前它
dt
没有列。在
for
循环中,为什么要将日期增加两次(一次在块内,另一次在
for
的更新语句部分)?请添加更多详细信息