Below method will return DataSet with data what you exactly want.
private DataSet GetListOfMonths(int range)
{
DataSet ds = new DataSet();
ds.Tables.Add("Months");
ds.Tables["Months"].Columns.Add("Year");
ds.Tables["Months"].Columns.Add("Month");
DateTime dtCurrent = DateTime.Now;
for (int i = 0; i < range; i++)
{
DataRow dr = ds.Tables["Months"].NewRow();
dr["Year"] = dtCurrent.Year;
dr["Month"] =System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(dtCurrent.Month);
ds.Tables["Months"].Rows.Add(dr);
dtCurrent = dtCurrent.AddMonths(1);
}
return ds;
}