我想从表到excel的出口记录? [英] i want export record from table to excel?

查看:60
本文介绍了我想从表到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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆