Writing DataReader Rows to Excel File

Eu tenho dados no SQL Server 2000 e tenho um HyperLink que vai para um formulário de passagem cujo code-behind produzirá os dados em um arquivo do Excel. Eu tenho seguido este tutorial:

http: //www.dzone.com/links/r/export_gridview_to_excelcsv_in_net_using_c.htm

Consegui produzir alguns valores de amostra do DataReader. O primeiro problema que encontro é que não existe o método DataTable Load na 1.1. Tenho dados retornando pelo DataReader, mas preciso de ajuda para criar os cabeçalhos e gerá-los, juntamente com as linhas de dados, para o arquivo do Excel ...

Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.Buffer = true;

string attachment 
    = "attachment;filename=Report_" + DateTime.Now.ToString() + ".xls"; 
Response.AddHeader("content-disposition", attachment);

Response.Charset = string.Empty;
Response.Cache.SetCacheability(System.Web.HttpCacheability.Public);
Response.ContentType = "application/ms-excel";

DataTable dt = new DataTable();
dt.Columns.Add("Company");
dt.Columns.Add("Address1");
dt.Columns.Add("Address2");
dt.Columns.Add("City");
dt.Columns.Add("State");
dt.Columns.Add("ZipCode");

SqlConnection con = new SqlConnection();
SqlCommand com = new SqlCommand();
con.ConnectionString = "myconnstring";
com.Connection = con;
com.CommandText 
    = "SELECT DISTINCT  Company, Address1, Address2, City, State, ZipCode" + 
      " FROM Vendor_View";
con.Open();

SqlDataReader dr = com.ExecuteReader();
while(dr.Read())
{
    // how to grab and output data to Excel? 
}

questionAnswers(4)

yourAnswerToTheQuestion