上网查了很多方法,可是没有一个方法我测试成功的,然后我就用了一个比较笨但是还算可以用的方法。就是直接将服务器端文件路劲传到前台,用javascript设置a标签的href属性值,然后触发a标签的click事件,让其下载。
1)首先将dataset转换为excel文件,代码如下:
writeToExcel(){
/*
* *
* 将数据存储到datatable中便于导出到excel中,
* 我的数据是从sqlserver中取出来,存入到excel表中,然后存入到服务器端
*/
DateTime dayStart = Convert.ToDateTime( start + " " + starthour );
DateTime dayEnd = Convert.ToDateTime( end + " " + endhour );
//链接字符串,可以直接写,我这里是从web.config中取出来的
string strConn = ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString;
string strsql = "你的sql字符串";//sql语句
using (SqlConnection conn = new SqlConnection(strConn))
{
using (SqlCommand cmd = new SqlCommand( strsql, conn ))
{
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
while(reader.Read())
{
WenshuExl ws = new WenshuExl();//WenshuExl是自己定义的一个类,里面有下面的一些属性
ws.属性1 = reader.GetValue( 0 ).ToString();
ws.属性2 = reader.GetValue( 1 ).ToString();
ws.属性3 = reader.GetValue( 2 ).ToString();
ws.属性4 &