参照文章
asp.net前台请参照链接文章
asp.net后台
//导出事件
protected void export_Click(object sender, EventArgs e)
{
//导出所有的检索数据
message.Text = "";
//开始时间
string fromData = fromDate.Text.Trim();
//结束时间
string toData = toDate.Text.Trim();
int flag = SerialnumSelet.ExportUploadResult(fromData, toData);
if (flag == 0)
{
message.Text = "请选择需要导出的数据";
message.ForeColor = System.Drawing.Color.Red;
}
}
/// <summary>
/// SerialnumSelet类中的导出方法
/// </summary>
/// <param name="fromData">开始时间</param>
/// <param name="toData">结束时间</param>
public static int ExportUploadResult(string fromData, string toData)
{
//执行成功标识
int flag = 0;
DataTable dt = new DataTable();
try {
string ConStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
MySqlConnection con = new MySqlConnection(ConStr);
con.Open();
string sql = "select (@i:=@i+1) as id,stock,serialNumber from test,(select @i:=0) as it WHERE 1=1 ";
if (fromData != "")
{
sql +=" AND CTime >= '" + fromData + "'";
}
if (toData != "")
{
sql += " AND CTime <= '" + toData + "'";
}
sql += " ORDER BY CTime desc";
MySqlCommand com = new MySqlCommand(sql, con);
MySqlDataReader read = com.ExecuteReader();
dt.Load(read);
var dataTable = new DataTable("test");
dataTable.Columns.Add("序号");
dataTable.Columns.Add("列名1");
dataTable.Columns.Add("列名2");
if (dt.Rows.Count > 0)
{
foreach (DataRow dr in dt.Rows)
{
var newRow = dataTable.NewRow();
newRow["序号"] = dr["id"];
newRow["列名1"] = dr["stock"];
newRow["列名2"] = dr["serialNumber"];
dataTable.Rows.Add(newRow);
}
}
else
{
return flag;
}
//该方法实现请转至参照文章
ExcelUtil.ExportExcelFile(System.Web.HttpContext.Current.Response, "自定义导出Excel名称" + DateTime.Now.ToString("yyyyMMddHHmmss"), dataTable);
//执行成功
flag = 1;
}
catch (Exception ex)
{
WriteLog(ex.ToString());
}
return flag;
}