我想从表到excel的出口记录? [英] i want export record from table to excel?
本文介绍了我想从表到excel的出口记录?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在sql中合并三个表,然后通过asp.net mvc 4.0将该记录导出到例外。
我该怎么做。如何为该
i want to merge three tables in sql and i export that records to exce through asp.net mvc 4.0.
how to i do that.how to write stored procedure for that
推荐答案
1.使用连接到三个表来获取数据作为单个表。
2.将其取入控制器使用linq或Datatable
3.使用此代码推送到客户端
1.use join to the three tables to get data as a single table.
2. fetch that into controller using linq or Datatable
3. push to client using this code
//Write it back to the client
Response.Clear();
Response.AddHeader("content-disposition", "attachment; filename=file.xlsx");
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.BinaryWrite(pck.GetAsByteArray());
Response.End();
嗨...
看到这个,可能对你有帮助。
Hi...
See this one,may its help ful to u.
datatable dt;
string filename = Server.MapPath("~/Download.xlsx");
StreamWriter sw = new StreamWriter(filename, false);
//DataTable dt = new DataTable();
int iColCount = dt.Columns.Count;
for (int i = 1; i < iColCount; i++)
{
sw.Write(dt.Columns[i]);
if (i < iColCount - 1)
{
sw.Write(",");
}
}
sw.Write(sw.NewLine);
foreach (DataRow dr in dt.Rows)
{
for (int i = 0; i < iColCount; i++)
{
if (!Convert.IsDBNull(dr[i]))
{
sw.Write(dr[i].ToString());
}
if (i < iColCount - 1)
{
sw.Write(",");
}
}
sw.Write(sw.NewLine);
}
sw.Close();
//Response.Clear();
Response.ClearContent();
Response.ContentType = "application/xlsx";
Response.AddHeader("Content-Disposition", "attachment; filename=Download.xlsx");
Response.WriteFile(filename);
Response.Flush();
//Response.Write();
Response.End();
谢谢你。
Thank u.
这篇关于我想从表到excel的出口记录?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文